mirror of
https://github.com/morbalint/kemkas.git
synced 2026-07-17 19:03:46 +00:00
adding hidden basic asp.net core backend (#30)
Base functionality:
DB
email sending
user registration & login
storing new characters and reading them back
Notes:
Functionality is "hidden" with no links pointing to it.
Most pages are scaffolded and not reviewed at all :(
local Dev db setup is pushed to git
NO local email setup :(
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
using Kemkas.Web.Db.Models;
|
||||
using Microsoft.AspNetCore.DataProtection.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
|
||||
|
||||
namespace Kemkas.Web.Db;
|
||||
|
||||
public class ApplicationDbContext : IdentityDbContext<ApplicationUser, ApplicationRole, int>, IDataProtectionKeyContext
|
||||
{
|
||||
public ApplicationDbContext(DbContextOptions options) : base(options)
|
||||
{
|
||||
}
|
||||
|
||||
public DbSet<DataProtectionKey> DataProtectionKeys { get; set; }
|
||||
|
||||
public DbSet<V1Karakter> Karakterek { get; set; }
|
||||
|
||||
public DbSet<V1KarakterKepzettseg> KarakterKepzettsegek { get; set; }
|
||||
|
||||
public DbSet<V1Szintlepes> Szintlepesek { get; set; }
|
||||
|
||||
public DbSet<V1Felszereles> Felszerelesek { get; set; }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public enum Faj
|
||||
{
|
||||
Ember = 0,
|
||||
Amazon = 1,
|
||||
Birodalmi = 2,
|
||||
Etuniai = 3,
|
||||
Eszaki = 4,
|
||||
Osember = 5,
|
||||
Elf = 6,
|
||||
Felelf = 7,
|
||||
Felork = 8,
|
||||
Felszerzet = 9,
|
||||
Gnom = 10,
|
||||
Torpe = 11,
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public static class FajExtensions
|
||||
{
|
||||
public static Faj Convert(string faj)
|
||||
{
|
||||
return faj switch
|
||||
{
|
||||
"f_ember" => Faj.Ember,
|
||||
"f_amazon" => Faj.Amazon,
|
||||
"f_birodalmi" => Faj.Birodalmi,
|
||||
"f_etuniai" => Faj.Etuniai,
|
||||
"f_eszaki" => Faj.Eszaki,
|
||||
"f_osember" => Faj.Osember,
|
||||
"f_elf" => Faj.Elf,
|
||||
"f_felelf" => Faj.Felelf,
|
||||
"f_felork" => Faj.Felork,
|
||||
"f_felszerzet" => Faj.Felszerzet,
|
||||
"f_gnom" => Faj.Gnom,
|
||||
"f_torpe" => Faj.Torpe,
|
||||
_ => throw new Exception("invalid faj: " + faj)
|
||||
};
|
||||
}
|
||||
|
||||
public static string Convert(this Faj faj)
|
||||
{
|
||||
return faj switch
|
||||
{
|
||||
Faj.Ember => "f_ember",
|
||||
Faj.Amazon => "f_amazon",
|
||||
Faj.Birodalmi => "f_birodalmi",
|
||||
Faj.Etuniai => "f_etuniai",
|
||||
Faj.Eszaki => "f_eszaki",
|
||||
Faj.Osember => "f_osember",
|
||||
Faj.Elf => "f_elf",
|
||||
Faj.Felelf => "f_felelf",
|
||||
Faj.Felork => "f_felork",
|
||||
Faj.Felszerzet => "f_felszerzet",
|
||||
Faj.Gnom => "f_gnom",
|
||||
Faj.Torpe => "f_torpe",
|
||||
_ => throw new Exception("invalid faj: " + faj)
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
[Flags]
|
||||
public enum Jellem : byte
|
||||
{
|
||||
Semleges = 0,
|
||||
Torvenyes = 1,
|
||||
Kaotikus = 2,
|
||||
Jo = 4,
|
||||
TorvenyesJo = Torvenyes | Jo, // 5
|
||||
KaotikusJo = Kaotikus | Jo, // 6
|
||||
Gonosz = 8,
|
||||
TorvenyesGonosz = Torvenyes | Gonosz, // 9
|
||||
KaotikusGonosz = Kaotikus | Gonosz, // 10
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public static class JellemExtensions
|
||||
{
|
||||
public static Jellem Convert(string jellem)
|
||||
{
|
||||
return jellem switch
|
||||
{
|
||||
"TJ" => Jellem.TorvenyesJo,
|
||||
"SJ" => Jellem.Jo,
|
||||
"KJ" => Jellem.KaotikusJo,
|
||||
"TS" => Jellem.Torvenyes,
|
||||
"S" => Jellem.Semleges,
|
||||
"KS" => Jellem.Kaotikus,
|
||||
"TG" => Jellem.TorvenyesGonosz,
|
||||
"SG" => Jellem.Gonosz,
|
||||
"KG" => Jellem.KaotikusGonosz,
|
||||
_ => throw new ValidationException("invalid jellem: " + jellem)
|
||||
};
|
||||
}
|
||||
|
||||
public static string Convert(this Jellem jellem)
|
||||
{
|
||||
return jellem switch
|
||||
{
|
||||
Jellem.TorvenyesJo => "TJ",
|
||||
Jellem.Jo => "SJ",
|
||||
Jellem.KaotikusJo => "KJ",
|
||||
Jellem.Torvenyes => "TS",
|
||||
Jellem.Semleges => "S",
|
||||
Jellem.Kaotikus => "KS",
|
||||
Jellem.TorvenyesGonosz => "TG",
|
||||
Jellem.Gonosz => "SG",
|
||||
Jellem.KaotikusGonosz => "KG",
|
||||
_ => throw new ValidationException("invalid jellem: " + (byte)jellem)
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public enum Kepzettseg
|
||||
{
|
||||
Alkimia = 1,
|
||||
Alcazas = 2,
|
||||
Allatidomitas = 3,
|
||||
Csapdak = 4,
|
||||
Csillagjoslas = 5,
|
||||
Egyensulyozas = 6,
|
||||
Eloadas = 7,
|
||||
Ertekbecsles = 8,
|
||||
Gyogyitas = 9,
|
||||
Hajozas = 10,
|
||||
Hallgatozas = 11,
|
||||
Hamisitas = 12,
|
||||
JelekOlvasasa = 13,
|
||||
Koncentracio = 14,
|
||||
Lovaglas = 15,
|
||||
Maszas = 16,
|
||||
Megfigyeles = 17,
|
||||
Meregkeveres = 18,
|
||||
Mesterseg = 19,
|
||||
Nyomkereses = 20,
|
||||
Osonas = 21,
|
||||
Rejtozes = 22,
|
||||
Szabadulomuveszet = 23,
|
||||
Tudas = 24,
|
||||
Ugras = 25,
|
||||
Uszas = 26,
|
||||
Varazslatismeret = 27,
|
||||
Zarnyitas = 28,
|
||||
Zsebmetszes = 29,
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public static class KepzettsegExtensions
|
||||
{
|
||||
public static Kepzettseg Convert(string kepzettseg)
|
||||
{
|
||||
return kepzettseg switch
|
||||
{
|
||||
"k_alkimia" => Kepzettseg.Alkimia,
|
||||
"k_alcazas" => Kepzettseg.Alcazas,
|
||||
"k_allatidomitas" => Kepzettseg.Allatidomitas,
|
||||
"k_csapdak" => Kepzettseg.Csapdak,
|
||||
"k_csillagjoslas" => Kepzettseg.Csillagjoslas,
|
||||
"k_egyensulyozas" => Kepzettseg.Egyensulyozas,
|
||||
"k_eloadas" => Kepzettseg.Eloadas,
|
||||
"k_ertekbecsles" => Kepzettseg.Ertekbecsles,
|
||||
"k_gyogyitas" => Kepzettseg.Gyogyitas,
|
||||
"k_hajozas" => Kepzettseg.Hajozas,
|
||||
"k_hallgatozas" => Kepzettseg.Hallgatozas,
|
||||
"k_hamisitas" => Kepzettseg.Hamisitas,
|
||||
"k_jelek_olvasasa" => Kepzettseg.JelekOlvasasa,
|
||||
"k_koncentracio" => Kepzettseg.Koncentracio,
|
||||
"k_lovaglas" => Kepzettseg.Lovaglas,
|
||||
"k_maszas" => Kepzettseg.Maszas,
|
||||
"k_megfigyeles" => Kepzettseg.Megfigyeles,
|
||||
"k_meregkeveres" => Kepzettseg.Meregkeveres,
|
||||
"k_mesterseg" => Kepzettseg.Mesterseg,
|
||||
"k_nyomkereses" => Kepzettseg.Nyomkereses,
|
||||
"k_osonas" => Kepzettseg.Osonas,
|
||||
"k_rejtozes" => Kepzettseg.Rejtozes,
|
||||
"k_szabadulomuveszet" => Kepzettseg.Szabadulomuveszet,
|
||||
"k_tudas" => Kepzettseg.Tudas,
|
||||
"k_ugras" => Kepzettseg.Ugras,
|
||||
"k_uszas" => Kepzettseg.Uszas,
|
||||
"k_varazslatismeret" => Kepzettseg.Varazslatismeret,
|
||||
"k_zarnyitas" => Kepzettseg.Zarnyitas,
|
||||
"k_zsebmetszes" => Kepzettseg.Zsebmetszes,
|
||||
_ => throw new ValidationException("invalid kepzettseg: " + kepzettseg),
|
||||
};
|
||||
}
|
||||
|
||||
public static string Convert(this Kepzettseg kepzettseg)
|
||||
{
|
||||
return kepzettseg switch
|
||||
{
|
||||
Kepzettseg.Alkimia => "k_alkimia",
|
||||
Kepzettseg.Alcazas => "k_alcazas",
|
||||
Kepzettseg.Allatidomitas => "k_allatidomitas",
|
||||
Kepzettseg.Csapdak => "k_csapdak",
|
||||
Kepzettseg.Csillagjoslas => "k_csillagjoslas",
|
||||
Kepzettseg.Egyensulyozas => "k_egyensulyozas",
|
||||
Kepzettseg.Eloadas => "k_eloadas",
|
||||
Kepzettseg.Ertekbecsles => "k_ertekbecsles",
|
||||
Kepzettseg.Gyogyitas => "k_gyogyitas",
|
||||
Kepzettseg.Hajozas => "k_hajozas",
|
||||
Kepzettseg.Hallgatozas => "k_hallgatozas",
|
||||
Kepzettseg.Hamisitas => "k_hamisitas",
|
||||
Kepzettseg.JelekOlvasasa => "k_jelek_olvasasa",
|
||||
Kepzettseg.Koncentracio => "k_koncentracio",
|
||||
Kepzettseg.Lovaglas => "k_lovaglas",
|
||||
Kepzettseg.Maszas => "k_maszas",
|
||||
Kepzettseg.Megfigyeles => "k_megfigyeles",
|
||||
Kepzettseg.Meregkeveres => "k_meregkeveres",
|
||||
Kepzettseg.Mesterseg => "k_mesterseg",
|
||||
Kepzettseg.Nyomkereses => "k_nyomkereses",
|
||||
Kepzettseg.Osonas => "k_osonas",
|
||||
Kepzettseg.Rejtozes => "k_rejtozes",
|
||||
Kepzettseg.Szabadulomuveszet => "k_szabadulomuveszet",
|
||||
Kepzettseg.Tudas => "k_tudas",
|
||||
Kepzettseg.Ugras => "k_ugras",
|
||||
Kepzettseg.Uszas => "k_uszas",
|
||||
Kepzettseg.Varazslatismeret => "k_varazslatismeret",
|
||||
Kepzettseg.Zarnyitas => "k_zarnyitas",
|
||||
Kepzettseg.Zsebmetszes => "k_zsebmetszes",
|
||||
_ => throw new ValidationException("invalid kepzettseg: " + kepzettseg),
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public enum Osztaly
|
||||
{
|
||||
Error = 0, // for unset enum value mapping
|
||||
Harcos = 1,
|
||||
Ijasz = 2,
|
||||
Amazon = 3,
|
||||
Kaloz = 4,
|
||||
Barbar = 5,
|
||||
Pap = 6,
|
||||
Tolvaj = 7,
|
||||
Varazslo = 8,
|
||||
Illuzionista = 9,
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public static class OsztalyExtensions
|
||||
{
|
||||
public static Osztaly Convert(string osztaly)
|
||||
{
|
||||
return osztaly switch
|
||||
{
|
||||
"o_harcos" => Osztaly.Harcos,
|
||||
"o_ijasz" => Osztaly.Ijasz,
|
||||
"o_amazon" => Osztaly.Amazon,
|
||||
"o_kaloz" => Osztaly.Kaloz,
|
||||
"o_barbar" => Osztaly.Barbar,
|
||||
"o_pap" => Osztaly.Pap,
|
||||
"o_tolvaj" => Osztaly.Tolvaj,
|
||||
"o_varazslo" => Osztaly.Varazslo,
|
||||
"o_illuzionista" => Osztaly.Illuzionista,
|
||||
_ => throw new ValidationException("unknown osztaly: " + osztaly)
|
||||
};
|
||||
}
|
||||
|
||||
public static string Convert(this Osztaly osztaly)
|
||||
{
|
||||
return osztaly switch
|
||||
{
|
||||
Osztaly.Harcos => "o_harcos",
|
||||
Osztaly.Ijasz => "o_ijasz",
|
||||
Osztaly.Amazon => "o_amazon",
|
||||
Osztaly.Kaloz => "o_kaloz",
|
||||
Osztaly.Barbar => "o_barbar",
|
||||
Osztaly.Pap => "o_pap",
|
||||
Osztaly.Tolvaj => "o_tolvaj",
|
||||
Osztaly.Varazslo => "o_varazslo",
|
||||
Osztaly.Illuzionista => "o_illuzionista",
|
||||
_ => throw new ValidationException("invalid osztaly!")
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
[Flags]
|
||||
public enum Tulajdonsag : byte
|
||||
{
|
||||
Ero = 1,
|
||||
Ugyesseg = 2,
|
||||
Egeszseg = 4,
|
||||
Intelligencia = 8,
|
||||
Bolcsesseg = 16,
|
||||
Karizma = 32,
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Kemkas.Web.Db.Enums;
|
||||
|
||||
public static class TulajdonsagExtensions
|
||||
{
|
||||
public static Tulajdonsag Convert(string tulajdonsag)
|
||||
{
|
||||
return tulajdonsag switch
|
||||
{
|
||||
"t_ero" => Tulajdonsag.Ero,
|
||||
"t_ugy" => Tulajdonsag.Ugyesseg,
|
||||
"t_egs" => Tulajdonsag.Egeszseg,
|
||||
"t_int" => Tulajdonsag.Intelligencia,
|
||||
"t_bol" => Tulajdonsag.Bolcsesseg,
|
||||
"t_kar" => Tulajdonsag.Karizma,
|
||||
_ => throw new ValidationException("invalid tulajdonsag: " + tulajdonsag),
|
||||
};
|
||||
}
|
||||
|
||||
public static string Convert(this Tulajdonsag tulajdonsag)
|
||||
{
|
||||
return tulajdonsag switch
|
||||
{
|
||||
Tulajdonsag.Ero => "t_ero",
|
||||
Tulajdonsag.Ugyesseg => "t_ugy",
|
||||
Tulajdonsag.Egeszseg => "t_egs",
|
||||
Tulajdonsag.Intelligencia => "t_int",
|
||||
Tulajdonsag.Bolcsesseg => "t_bol",
|
||||
Tulajdonsag.Karizma => "t_kar",
|
||||
_ => throw new ValidationException("invalid tulajdonsag: " + tulajdonsag),
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,284 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using Kemkas.Web.Db;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Kemkas.Web.Db.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20231215102054_Initial")]
|
||||
partial class Initial
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "8.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationRole", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("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.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,225 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Kemkas.Web.Db.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class Initial : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetRoles",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
Name = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
NormalizedName = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
ConcurrencyStamp = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetRoles", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUsers",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
UserName = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
NormalizedUserName = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
Email = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
NormalizedEmail = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
EmailConfirmed = table.Column<bool>(type: "boolean", nullable: false),
|
||||
PasswordHash = table.Column<string>(type: "text", nullable: true),
|
||||
SecurityStamp = table.Column<string>(type: "text", nullable: true),
|
||||
ConcurrencyStamp = table.Column<string>(type: "text", nullable: true),
|
||||
PhoneNumber = table.Column<string>(type: "text", nullable: true),
|
||||
PhoneNumberConfirmed = table.Column<bool>(type: "boolean", nullable: false),
|
||||
TwoFactorEnabled = table.Column<bool>(type: "boolean", nullable: false),
|
||||
LockoutEnd = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
|
||||
LockoutEnabled = table.Column<bool>(type: "boolean", nullable: false),
|
||||
AccessFailedCount = table.Column<int>(type: "integer", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUsers", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetRoleClaims",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
RoleId = table.Column<int>(type: "integer", nullable: false),
|
||||
ClaimType = table.Column<string>(type: "text", nullable: true),
|
||||
ClaimValue = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetRoleClaims", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetRoleClaims_AspNetRoles_RoleId",
|
||||
column: x => x.RoleId,
|
||||
principalTable: "AspNetRoles",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserClaims",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
UserId = table.Column<int>(type: "integer", nullable: false),
|
||||
ClaimType = table.Column<string>(type: "text", nullable: true),
|
||||
ClaimValue = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserClaims", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserClaims_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserLogins",
|
||||
columns: table => new
|
||||
{
|
||||
LoginProvider = table.Column<string>(type: "character varying(128)", maxLength: 128, nullable: false),
|
||||
ProviderKey = table.Column<string>(type: "character varying(128)", maxLength: 128, nullable: false),
|
||||
ProviderDisplayName = table.Column<string>(type: "text", nullable: true),
|
||||
UserId = table.Column<int>(type: "integer", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserLogins", x => new { x.LoginProvider, x.ProviderKey });
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserLogins_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserRoles",
|
||||
columns: table => new
|
||||
{
|
||||
UserId = table.Column<int>(type: "integer", nullable: false),
|
||||
RoleId = table.Column<int>(type: "integer", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserRoles", x => new { x.UserId, x.RoleId });
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserRoles_AspNetRoles_RoleId",
|
||||
column: x => x.RoleId,
|
||||
principalTable: "AspNetRoles",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserRoles_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserTokens",
|
||||
columns: table => new
|
||||
{
|
||||
UserId = table.Column<int>(type: "integer", nullable: false),
|
||||
LoginProvider = table.Column<string>(type: "character varying(128)", maxLength: 128, nullable: false),
|
||||
Name = table.Column<string>(type: "character varying(128)", maxLength: 128, nullable: false),
|
||||
Value = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserTokens", x => new { x.UserId, x.LoginProvider, x.Name });
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserTokens_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetRoleClaims_RoleId",
|
||||
table: "AspNetRoleClaims",
|
||||
column: "RoleId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "RoleNameIndex",
|
||||
table: "AspNetRoles",
|
||||
column: "NormalizedName",
|
||||
unique: true);
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetUserClaims_UserId",
|
||||
table: "AspNetUserClaims",
|
||||
column: "UserId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetUserLogins_UserId",
|
||||
table: "AspNetUserLogins",
|
||||
column: "UserId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetUserRoles_RoleId",
|
||||
table: "AspNetUserRoles",
|
||||
column: "RoleId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "EmailIndex",
|
||||
table: "AspNetUsers",
|
||||
column: "NormalizedEmail");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "UserNameIndex",
|
||||
table: "AspNetUsers",
|
||||
column: "NormalizedUserName",
|
||||
unique: true);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetRoleClaims");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserClaims");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserLogins");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserRoles");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserTokens");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetRoles");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUsers");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,476 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using Kemkas.Web.Db;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Kemkas.Web.Db.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20231216232129_AddV1Character")]
|
||||
partial class AddV1Character
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "8.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationRole", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("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("Kemkas.Web.Db.Models.V1Felszereles", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<bool>("IsFegyver")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("Felszerelesek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<byte>("Bolcsesseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Egeszseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Ero")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<int>("Faj")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<byte>("Intelligencia")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<bool>("IsPublic")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Isten")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("Jellem")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Karizma")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<double?>("Kor")
|
||||
.HasColumnType("double precision");
|
||||
|
||||
b.Property<string>("Nem")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Nev")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("Osztaly")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int?>("OwnerUserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Pajzs")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Pancel")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("Szint")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Ugyesseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OwnerUserId");
|
||||
|
||||
b.ToTable("Karakterek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1KarakterKepzettseg", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<bool>("IsTolvajKepzettseg")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<int>("Kepzettseg")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("KarakterKepzettsegek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Szintlepes", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<string>("FegyverSpecializacio")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("HpRoll")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<byte>("KarakterSzint")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte?>("TulajdonsagNoveles")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("Szintlepesek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Felszereles", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("Felszereles")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", "OwnerUser")
|
||||
.WithMany()
|
||||
.HasForeignKey("OwnerUserId");
|
||||
|
||||
b.Navigation("OwnerUser");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1KarakterKepzettseg", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("KarakterKepzettsegek")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Szintlepes", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("Szintlepesek")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.Navigation("Felszereles");
|
||||
|
||||
b.Navigation("KarakterKepzettsegek");
|
||||
|
||||
b.Navigation("Szintlepesek");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Kemkas.Web.Db.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AddV1Character : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "Karakterek",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(type: "uuid", nullable: false),
|
||||
IsPublic = table.Column<bool>(type: "boolean", nullable: false),
|
||||
OwnerUserId = table.Column<int>(type: "integer", nullable: true),
|
||||
Nev = table.Column<string>(type: "text", nullable: false),
|
||||
Nem = table.Column<string>(type: "text", nullable: true),
|
||||
Kor = table.Column<double>(type: "double precision", nullable: true),
|
||||
Jellem = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Isten = table.Column<string>(type: "text", nullable: true),
|
||||
Faj = table.Column<int>(type: "integer", nullable: false),
|
||||
Osztaly = table.Column<int>(type: "integer", nullable: false),
|
||||
Ero = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Ugyesseg = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Egeszseg = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Intelligencia = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Bolcsesseg = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Karizma = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Szint = table.Column<byte>(type: "smallint", nullable: false),
|
||||
Pancel = table.Column<string>(type: "text", nullable: true),
|
||||
Pajzs = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_Karakterek", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_Karakterek_AspNetUsers_OwnerUserId",
|
||||
column: x => x.OwnerUserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id");
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "Felszerelesek",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(type: "uuid", nullable: false),
|
||||
KarakterId = table.Column<Guid>(type: "uuid", nullable: false),
|
||||
Name = table.Column<string>(type: "text", nullable: false),
|
||||
IsFegyver = table.Column<bool>(type: "boolean", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_Felszerelesek", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_Felszerelesek_Karakterek_KarakterId",
|
||||
column: x => x.KarakterId,
|
||||
principalTable: "Karakterek",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "KarakterKepzettsegek",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(type: "uuid", nullable: false),
|
||||
KarakterId = table.Column<Guid>(type: "uuid", nullable: false),
|
||||
Kepzettseg = table.Column<int>(type: "integer", nullable: false),
|
||||
IsTolvajKepzettseg = table.Column<bool>(type: "boolean", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_KarakterKepzettsegek", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_KarakterKepzettsegek_Karakterek_KarakterId",
|
||||
column: x => x.KarakterId,
|
||||
principalTable: "Karakterek",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "Szintlepesek",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(type: "uuid", nullable: false),
|
||||
KarakterId = table.Column<Guid>(type: "uuid", nullable: false),
|
||||
KarakterSzint = table.Column<byte>(type: "smallint", nullable: false),
|
||||
HpRoll = table.Column<byte>(type: "smallint", nullable: false),
|
||||
TulajdonsagNoveles = table.Column<byte>(type: "smallint", nullable: true),
|
||||
FegyverSpecializacio = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_Szintlepesek", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_Szintlepesek_Karakterek_KarakterId",
|
||||
column: x => x.KarakterId,
|
||||
principalTable: "Karakterek",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_Felszerelesek_KarakterId",
|
||||
table: "Felszerelesek",
|
||||
column: "KarakterId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_Karakterek_OwnerUserId",
|
||||
table: "Karakterek",
|
||||
column: "OwnerUserId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_KarakterKepzettsegek_KarakterId",
|
||||
table: "KarakterKepzettsegek",
|
||||
column: "KarakterId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_Szintlepesek_KarakterId",
|
||||
table: "Szintlepesek",
|
||||
column: "KarakterId");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "Felszerelesek");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "KarakterKepzettsegek");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "Szintlepesek");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "Karakterek");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,495 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using Kemkas.Web.Db;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Kemkas.Web.Db.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20231219150639_AddDataProtectionKeys")]
|
||||
partial class AddDataProtectionKeys
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "8.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationRole", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("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("Kemkas.Web.Db.Models.V1Felszereles", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<bool>("IsFegyver")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("Felszerelesek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<byte>("Bolcsesseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Egeszseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Ero")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<int>("Faj")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<byte>("Intelligencia")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<bool>("IsPublic")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Isten")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("Jellem")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Karizma")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<double?>("Kor")
|
||||
.HasColumnType("double precision");
|
||||
|
||||
b.Property<string>("Nem")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Nev")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("Osztaly")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int?>("OwnerUserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Pajzs")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Pancel")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("Szint")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Ugyesseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OwnerUserId");
|
||||
|
||||
b.ToTable("Karakterek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1KarakterKepzettseg", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<bool>("IsTolvajKepzettseg")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<int>("Kepzettseg")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("KarakterKepzettsegek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Szintlepes", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<string>("FegyverSpecializacio")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("HpRoll")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<byte>("KarakterSzint")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte?>("TulajdonsagNoveles")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("Szintlepesek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.DataProtectionKey", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FriendlyName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Xml")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("DataProtectionKeys");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Felszereles", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("Felszereles")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", "OwnerUser")
|
||||
.WithMany()
|
||||
.HasForeignKey("OwnerUserId");
|
||||
|
||||
b.Navigation("OwnerUser");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1KarakterKepzettseg", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("KarakterKepzettsegek")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Szintlepes", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("Szintlepesek")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.Navigation("Felszereles");
|
||||
|
||||
b.Navigation("KarakterKepzettsegek");
|
||||
|
||||
b.Navigation("Szintlepesek");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Kemkas.Web.Db.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AddDataProtectionKeys : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "DataProtectionKeys",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
FriendlyName = table.Column<string>(type: "text", nullable: true),
|
||||
Xml = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_DataProtectionKeys", x => x.Id);
|
||||
});
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "DataProtectionKeys");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,492 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using Kemkas.Web.Db;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Kemkas.Web.Db.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
partial class ApplicationDbContextModelSnapshot : ModelSnapshot
|
||||
{
|
||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "8.0.0")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationRole", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("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("Kemkas.Web.Db.Models.V1Felszereles", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<bool>("IsFegyver")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("Felszerelesek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<byte>("Bolcsesseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Egeszseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Ero")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<int>("Faj")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<byte>("Intelligencia")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<bool>("IsPublic")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Isten")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("Jellem")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Karizma")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<double?>("Kor")
|
||||
.HasColumnType("double precision");
|
||||
|
||||
b.Property<string>("Nem")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Nev")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("Osztaly")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int?>("OwnerUserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Pajzs")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Pancel")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("Szint")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte>("Ugyesseg")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OwnerUserId");
|
||||
|
||||
b.ToTable("Karakterek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1KarakterKepzettseg", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<bool>("IsTolvajKepzettseg")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<int>("Kepzettseg")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("KarakterKepzettsegek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Szintlepes", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<string>("FegyverSpecializacio")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<byte>("HpRoll")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<Guid>("KarakterId")
|
||||
.HasColumnType("uuid");
|
||||
|
||||
b.Property<byte>("KarakterSzint")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.Property<byte?>("TulajdonsagNoveles")
|
||||
.HasColumnType("smallint");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("KarakterId");
|
||||
|
||||
b.ToTable("Szintlepesek");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.DataProtection.EntityFrameworkCore.DataProtectionKey", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FriendlyName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Xml")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("DataProtectionKeys");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RoleId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.Property<int>("UserId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(128)
|
||||
.HasColumnType("character varying(128)");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Felszereles", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("Felszereles")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", "OwnerUser")
|
||||
.WithMany()
|
||||
.HasForeignKey("OwnerUserId");
|
||||
|
||||
b.Navigation("OwnerUser");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1KarakterKepzettseg", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("KarakterKepzettsegek")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Szintlepes", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.V1Karakter", "Karakter")
|
||||
.WithMany("Szintlepesek")
|
||||
.HasForeignKey("KarakterId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("Karakter");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
|
||||
{
|
||||
b.HasOne("Kemkas.Web.Db.Models.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Kemkas.Web.Db.Models.V1Karakter", b =>
|
||||
{
|
||||
b.Navigation("Felszereles");
|
||||
|
||||
b.Navigation("KarakterKepzettsegek");
|
||||
|
||||
b.Navigation("Szintlepesek");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
|
||||
namespace Kemkas.Web.Db.Models;
|
||||
|
||||
public class ApplicationRole : IdentityRole<int>
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
|
||||
namespace Kemkas.Web.Db.Models;
|
||||
|
||||
public class ApplicationUser : IdentityUser<int>
|
||||
{
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace Kemkas.Web.Db.Models;
|
||||
|
||||
public class V1Felszereles
|
||||
{
|
||||
[Key]
|
||||
public Guid Id { get; set; }
|
||||
public Guid KarakterId { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
public bool IsFegyver { get; set; } = true;
|
||||
|
||||
[ForeignKey(nameof(KarakterId))]
|
||||
public virtual V1Karakter Karakter { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Kemkas.Web.Db.Enums;
|
||||
|
||||
namespace Kemkas.Web.Db.Models;
|
||||
|
||||
public class V1Karakter
|
||||
{
|
||||
[Key] public Guid Id { get; set; }
|
||||
public bool IsPublic { get; set; } = false;
|
||||
public int? OwnerUserId { get; set; }
|
||||
|
||||
public string Nev { get; set; }
|
||||
public string? Nem { get; set; }
|
||||
public double? Kor { get; set; }
|
||||
public Jellem Jellem { get; set; } = Jellem.Semleges;
|
||||
public string? Isten { get; set; }
|
||||
public Faj Faj { get; set; } = Faj.Ember;
|
||||
public Osztaly Osztaly { get; set; }
|
||||
public byte Ero { get; set; }
|
||||
public byte Ugyesseg { get; set; }
|
||||
public byte Egeszseg { get; set; }
|
||||
public byte Intelligencia { get; set; }
|
||||
public byte Bolcsesseg { get; set; }
|
||||
public byte Karizma { get; set; }
|
||||
public byte Szint { get; set; } = 1;
|
||||
|
||||
public string? Pancel { get; set; }
|
||||
public string? Pajzs { get; set; }
|
||||
|
||||
[ForeignKey(nameof(OwnerUserId))]
|
||||
public ApplicationUser? OwnerUser { get; set; }
|
||||
|
||||
[InverseProperty(nameof(V1KarakterKepzettseg.Karakter))]
|
||||
public virtual IEnumerable<V1KarakterKepzettseg> KarakterKepzettsegek { get; set; }
|
||||
|
||||
[InverseProperty(nameof(V1Szintlepes.Karakter))]
|
||||
public virtual IEnumerable<V1Szintlepes> Szintlepesek { get; set; }
|
||||
|
||||
[InverseProperty(nameof(V1Felszereles.Karakter))]
|
||||
public virtual IEnumerable<V1Felszereles> Felszereles { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Kemkas.Web.Db.Enums;
|
||||
|
||||
namespace Kemkas.Web.Db.Models;
|
||||
|
||||
public class V1KarakterKepzettseg
|
||||
{
|
||||
[Key]
|
||||
public Guid Id { get; set; }
|
||||
public Guid KarakterId { get; set; }
|
||||
public Kepzettseg Kepzettseg { get; set; }
|
||||
public bool IsTolvajKepzettseg { get; set; } = false;
|
||||
|
||||
[ForeignKey(nameof(KarakterId))]
|
||||
public virtual V1Karakter Karakter { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Kemkas.Web.Db.Enums;
|
||||
|
||||
namespace Kemkas.Web.Db.Models;
|
||||
|
||||
public class V1Szintlepes
|
||||
{
|
||||
[Key]
|
||||
public Guid Id { get; set; }
|
||||
public Guid KarakterId { get; set; }
|
||||
|
||||
public byte KarakterSzint { get; set; }
|
||||
|
||||
// for multiclass characters
|
||||
// public Osztaly Osztaly { get; set; }
|
||||
//
|
||||
// public byte OsztalySzint { get; set; }
|
||||
|
||||
public byte HpRoll { get; set; }
|
||||
public Tulajdonsag? TulajdonsagNoveles { get; set; }
|
||||
public string? FegyverSpecializacio { get; set; }
|
||||
|
||||
[ForeignKey(nameof(KarakterId))]
|
||||
public virtual V1Karakter Karakter { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user