< Summary - Syki

Line coverage
98%
Covered lines: 2366
Uncovered lines: 39
Coverable lines: 2405
Total lines: 2557
Line coverage: 98.3%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
File 1: Up(...)100%11100%
File 1: Down(...)100%210%
File 2: BuildTargetModel(...)100%11100%

File(s)

/home/runner/work/syki/syki/Back/Migrations/20250729010306_AddTeacherDiscipline.cs

#LineLine coverage
 1using System;
 2using Microsoft.EntityFrameworkCore.Migrations;
 3
 4#nullable disable
 5
 6namespace Back.Migrations
 7{
 8    /// <inheritdoc />
 9    public partial class AddTeacherDiscipline : Migration
 10    {
 11        /// <inheritdoc />
 12        protected override void Up(MigrationBuilder migrationBuilder)
 13        {
 414            migrationBuilder.DropForeignKey(
 415                name: "fk_classes_teachers_teacher_id",
 416                schema: "syki",
 417                table: "classes");
 18
 419            migrationBuilder.AlterColumn<Guid>(
 420                name: "teacher_id",
 421                schema: "syki",
 422                table: "classes",
 423                type: "uuid",
 424                nullable: true,
 425                oldClrType: typeof(Guid),
 426                oldType: "uuid");
 27
 428            migrationBuilder.AddColumn<Guid>(
 429                name: "campus_id",
 430                schema: "syki",
 431                table: "classes",
 432                type: "uuid",
 433                nullable: true);
 34
 435            migrationBuilder.CreateTable(
 436                name: "teachers__disciplines",
 437                schema: "syki",
 438                columns: table => new
 439                {
 440                    syki_teacher_id = table.Column<Guid>(type: "uuid", nullable: false),
 441                    discipline_id = table.Column<Guid>(type: "uuid", nullable: false)
 442                },
 443                constraints: table =>
 444                {
 445                    table.PrimaryKey("pk_teachers__disciplines", x => new { x.syki_teacher_id, x.discipline_id });
 446                    table.ForeignKey(
 447                        name: "fk_teachers__disciplines_disciplines_discipline_id",
 448                        column: x => x.discipline_id,
 449                        principalSchema: "syki",
 450                        principalTable: "disciplines",
 451                        principalColumn: "id",
 452                        onDelete: ReferentialAction.Cascade);
 453                    table.ForeignKey(
 454                        name: "fk_teachers__disciplines_teachers_syki_teacher_id",
 455                        column: x => x.syki_teacher_id,
 456                        principalSchema: "syki",
 457                        principalTable: "teachers",
 458                        principalColumn: "id",
 459                        onDelete: ReferentialAction.Cascade);
 860                });
 61
 462            migrationBuilder.CreateIndex(
 463                name: "ix_classes_campus_id",
 464                schema: "syki",
 465                table: "classes",
 466                column: "campus_id");
 67
 468            migrationBuilder.CreateIndex(
 469                name: "ix_teachers__disciplines_discipline_id",
 470                schema: "syki",
 471                table: "teachers__disciplines",
 472                column: "discipline_id");
 73
 474            migrationBuilder.AddForeignKey(
 475                name: "fk_classes_campi_campus_id",
 476                schema: "syki",
 477                table: "classes",
 478                column: "campus_id",
 479                principalSchema: "syki",
 480                principalTable: "campi",
 481                principalColumn: "id");
 82
 483            migrationBuilder.AddForeignKey(
 484                name: "fk_classes_teachers_teacher_id",
 485                schema: "syki",
 486                table: "classes",
 487                column: "teacher_id",
 488                principalSchema: "syki",
 489                principalTable: "teachers",
 490                principalColumn: "id");
 491        }
 92
 93        /// <inheritdoc />
 94        protected override void Down(MigrationBuilder migrationBuilder)
 95        {
 096            migrationBuilder.DropForeignKey(
 097                name: "fk_classes_campi_campus_id",
 098                schema: "syki",
 099                table: "classes");
 100
 0101            migrationBuilder.DropForeignKey(
 0102                name: "fk_classes_teachers_teacher_id",
 0103                schema: "syki",
 0104                table: "classes");
 105
 0106            migrationBuilder.DropTable(
 0107                name: "teachers__disciplines",
 0108                schema: "syki");
 109
 0110            migrationBuilder.DropIndex(
 0111                name: "ix_classes_campus_id",
 0112                schema: "syki",
 0113                table: "classes");
 114
 0115            migrationBuilder.DropColumn(
 0116                name: "campus_id",
 0117                schema: "syki",
 0118                table: "classes");
 119
 0120            migrationBuilder.AlterColumn<Guid>(
 0121                name: "teacher_id",
 0122                schema: "syki",
 0123                table: "classes",
 0124                type: "uuid",
 0125                nullable: false,
 0126                defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
 0127                oldClrType: typeof(Guid),
 0128                oldType: "uuid",
 0129                oldNullable: true);
 130
 0131            migrationBuilder.AddForeignKey(
 0132                name: "fk_classes_teachers_teacher_id",
 0133                schema: "syki",
 0134                table: "classes",
 0135                column: "teacher_id",
 0136                principalSchema: "syki",
 0137                principalTable: "teachers",
 0138                principalColumn: "id",
 0139                onDelete: ReferentialAction.Cascade);
 0140        }
 141    }
 142}

/home/runner/work/syki/syki/Back/Migrations/20250729010306_AddTeacherDiscipline.Designer.cs

#LineLine coverage
 1// <auto-generated />
 2using System;
 3using System.Collections.Generic;
 4using System.Text.Json;
 5using Microsoft.EntityFrameworkCore;
 6using Microsoft.EntityFrameworkCore.Infrastructure;
 7using Microsoft.EntityFrameworkCore.Migrations;
 8using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 9using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
 10using Syki.Back.Database;
 11
 12#nullable disable
 13
 14namespace Back.Migrations
 15{
 16    [DbContext(typeof(SykiDbContext))]
 17    [Migration("20250729010306_AddTeacherDiscipline")]
 18    partial class AddTeacherDiscipline
 19    {
 20        /// <inheritdoc />
 21        protected override void BuildTargetModel(ModelBuilder modelBuilder)
 22        {
 23#pragma warning disable 612, 618
 224            modelBuilder
 225                .HasDefaultSchema("syki")
 226                .HasAnnotation("ProductVersion", "9.0.0")
 227                .HasAnnotation("Relational:MaxIdentifierLength", 63);
 28
 229            NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
 30
 231            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<System.Guid>", b =>
 232                {
 233                    b.Property<int>("Id")
 234                        .ValueGeneratedOnAdd()
 235                        .HasColumnType("integer")
 236                        .HasColumnName("id");
 237
 238                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 239
 240                    b.Property<string>("ClaimType")
 241                        .HasColumnType("text")
 242                        .HasColumnName("claim_type");
 243
 244                    b.Property<string>("ClaimValue")
 245                        .HasColumnType("text")
 246                        .HasColumnName("claim_value");
 247
 248                    b.Property<Guid>("RoleId")
 249                        .HasColumnType("uuid")
 250                        .HasColumnName("role_id");
 251
 252                    b.HasKey("Id")
 253                        .HasName("pk_role_claims");
 254
 255                    b.HasIndex("RoleId")
 256                        .HasDatabaseName("ix_role_claims_role_id");
 257
 258                    b.ToTable("role_claims", "syki");
 459                });
 60
 261            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<System.Guid>", b =>
 262                {
 263                    b.Property<int>("Id")
 264                        .ValueGeneratedOnAdd()
 265                        .HasColumnType("integer")
 266                        .HasColumnName("id");
 267
 268                    NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
 269
 270                    b.Property<string>("ClaimType")
 271                        .HasColumnType("text")
 272                        .HasColumnName("claim_type");
 273
 274                    b.Property<string>("ClaimValue")
 275                        .HasColumnType("text")
 276                        .HasColumnName("claim_value");
 277
 278                    b.Property<Guid>("UserId")
 279                        .HasColumnType("uuid")
 280                        .HasColumnName("user_id");
 281
 282                    b.HasKey("Id")
 283                        .HasName("pk_user_claims");
 284
 285                    b.HasIndex("UserId")
 286                        .HasDatabaseName("ix_user_claims_user_id");
 287
 288                    b.ToTable("user_claims", "syki");
 489                });
 90
 291            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<System.Guid>", b =>
 292                {
 293                    b.Property<string>("LoginProvider")
 294                        .HasColumnType("text")
 295                        .HasColumnName("login_provider");
 296
 297                    b.Property<string>("ProviderKey")
 298                        .HasColumnType("text")
 299                        .HasColumnName("provider_key");
 2100
 2101                    b.Property<string>("ProviderDisplayName")
 2102                        .HasColumnType("text")
 2103                        .HasColumnName("provider_display_name");
 2104
 2105                    b.Property<Guid>("UserId")
 2106                        .HasColumnType("uuid")
 2107                        .HasColumnName("user_id");
 2108
 2109                    b.HasKey("LoginProvider", "ProviderKey")
 2110                        .HasName("pk_user_logins");
 2111
 2112                    b.HasIndex("UserId")
 2113                        .HasDatabaseName("ix_user_logins_user_id");
 2114
 2115                    b.ToTable("user_logins", "syki");
 4116                });
 117
 2118            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<System.Guid>", b =>
 2119                {
 2120                    b.Property<Guid>("UserId")
 2121                        .HasColumnType("uuid")
 2122                        .HasColumnName("user_id");
 2123
 2124                    b.Property<Guid>("RoleId")
 2125                        .HasColumnType("uuid")
 2126                        .HasColumnName("role_id");
 2127
 2128                    b.HasKey("UserId", "RoleId")
 2129                        .HasName("pk_user_roles");
 2130
 2131                    b.HasIndex("RoleId")
 2132                        .HasDatabaseName("ix_user_roles_role_id");
 2133
 2134                    b.ToTable("user_roles", "syki");
 4135                });
 136
 2137            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<System.Guid>", b =>
 2138                {
 2139                    b.Property<Guid>("UserId")
 2140                        .HasColumnType("uuid")
 2141                        .HasColumnName("user_id");
 2142
 2143                    b.Property<string>("LoginProvider")
 2144                        .HasColumnType("text")
 2145                        .HasColumnName("login_provider");
 2146
 2147                    b.Property<string>("Name")
 2148                        .HasColumnType("text")
 2149                        .HasColumnName("name");
 2150
 2151                    b.Property<string>("Value")
 2152                        .HasColumnType("text")
 2153                        .HasColumnName("value");
 2154
 2155                    b.HasKey("UserId", "LoginProvider", "Name")
 2156                        .HasName("pk_user_tokens");
 2157
 2158                    b.ToTable("user_tokens", "syki");
 4159                });
 160
 2161            modelBuilder.Entity("Syki.Back.Audit.AuditLog", b =>
 2162                {
 2163                    b.Property<Guid>("Id")
 2164                        .HasColumnType("uuid")
 2165                        .HasColumnName("id");
 2166
 2167                    b.Property<string>("Action")
 2168                        .IsRequired()
 2169                        .HasColumnType("text")
 2170                        .HasColumnName("action");
 2171
 2172                    b.Property<DateTime>("CreatedAt")
 2173                        .HasColumnType("timestamp with time zone")
 2174                        .HasColumnName("created_at");
 2175
 2176                    b.Property<JsonDocument>("Data")
 2177                        .IsRequired()
 2178                        .HasColumnType("jsonb")
 2179                        .HasColumnName("data");
 2180
 2181                    b.Property<Guid>("EntityId")
 2182                        .HasColumnType("uuid")
 2183                        .HasColumnName("entity_id");
 2184
 2185                    b.Property<string>("EntityType")
 2186                        .IsRequired()
 2187                        .HasColumnType("text")
 2188                        .HasColumnName("entity_type");
 2189
 2190                    b.Property<Guid>("InstitutionId")
 2191                        .HasColumnType("uuid")
 2192                        .HasColumnName("institution_id");
 2193
 2194                    b.Property<Guid>("UserId")
 2195                        .HasColumnType("uuid")
 2196                        .HasColumnName("user_id");
 2197
 2198                    b.HasKey("Id")
 2199                        .HasName("pk_audit_logs");
 2200
 2201                    b.HasIndex("InstitutionId", "UserId")
 2202                        .HasDatabaseName("ix_audit_logs_institution_id_user_id");
 2203
 2204                    b.ToTable("audit_logs", "syki");
 4205                });
 206
 2207            modelBuilder.Entity("Syki.Back.Commands.Command", b =>
 2208                {
 2209                    b.Property<Guid>("Id")
 2210                        .HasColumnType("uuid")
 2211                        .HasColumnName("id");
 2212
 2213                    b.Property<string>("ActivityId")
 2214                        .HasColumnType("text")
 2215                        .HasColumnName("activity_id");
 2216
 2217                    b.Property<Guid?>("BatchId")
 2218                        .HasColumnType("uuid")
 2219                        .HasColumnName("batch_id");
 2220
 2221                    b.Property<DateTime>("CreatedAt")
 2222                        .HasColumnType("timestamp with time zone")
 2223                        .HasColumnName("created_at");
 2224
 2225                    b.Property<string>("Data")
 2226                        .IsRequired()
 2227                        .HasColumnType("text")
 2228                        .HasColumnName("data");
 2229
 2230                    b.Property<int>("Duration")
 2231                        .HasColumnType("integer")
 2232                        .HasColumnName("duration");
 2233
 2234                    b.Property<string>("Error")
 2235                        .HasColumnType("text")
 2236                        .HasColumnName("error");
 2237
 2238                    b.Property<Guid?>("EventId")
 2239                        .HasColumnType("uuid")
 2240                        .HasColumnName("event_id");
 2241
 2242                    b.Property<Guid>("InstitutionId")
 2243                        .HasColumnType("uuid")
 2244                        .HasColumnName("institution_id");
 2245
 2246                    b.Property<DateTime?>("NotBefore")
 2247                        .HasColumnType("timestamp with time zone")
 2248                        .HasColumnName("not_before");
 2249
 2250                    b.Property<Guid?>("OriginalId")
 2251                        .HasColumnType("uuid")
 2252                        .HasColumnName("original_id");
 2253
 2254                    b.Property<Guid?>("ParentId")
 2255                        .HasColumnType("uuid")
 2256                        .HasColumnName("parent_id");
 2257
 2258                    b.Property<DateTime?>("ProcessedAt")
 2259                        .HasColumnType("timestamp with time zone")
 2260                        .HasColumnName("processed_at");
 2261
 2262                    b.Property<Guid?>("ProcessorId")
 2263                        .HasColumnType("uuid")
 2264                        .HasColumnName("processor_id");
 2265
 2266                    b.Property<string>("Status")
 2267                        .IsRequired()
 2268                        .HasColumnType("text")
 2269                        .HasColumnName("status");
 2270
 2271                    b.Property<string>("Type")
 2272                        .IsRequired()
 2273                        .HasColumnType("text")
 2274                        .HasColumnName("type");
 2275
 2276                    b.HasKey("Id")
 2277                        .HasName("pk_commands");
 2278
 2279                    b.ToTable("commands", "syki");
 4280                });
 281
 2282            modelBuilder.Entity("Syki.Back.Commands.CommandBatch", b =>
 2283                {
 2284                    b.Property<Guid>("Id")
 2285                        .HasColumnType("uuid")
 2286                        .HasColumnName("id");
 2287
 2288                    b.Property<DateTime>("CreatedAt")
 2289                        .HasColumnType("timestamp with time zone")
 2290                        .HasColumnName("created_at");
 2291
 2292                    b.Property<Guid?>("EventId")
 2293                        .HasColumnType("uuid")
 2294                        .HasColumnName("event_id");
 2295
 2296                    b.Property<Guid>("InstitutionId")
 2297                        .HasColumnType("uuid")
 2298                        .HasColumnName("institution_id");
 2299
 2300                    b.Property<Guid?>("NextCommandId")
 2301                        .HasColumnType("uuid")
 2302                        .HasColumnName("next_command_id");
 2303
 2304                    b.Property<DateTime?>("ProcessedAt")
 2305                        .HasColumnType("timestamp with time zone")
 2306                        .HasColumnName("processed_at");
 2307
 2308                    b.Property<int>("Size")
 2309                        .HasColumnType("integer")
 2310                        .HasColumnName("size");
 2311
 2312                    b.Property<Guid?>("SourceCommandId")
 2313                        .HasColumnType("uuid")
 2314                        .HasColumnName("source_command_id");
 2315
 2316                    b.Property<string>("Status")
 2317                        .IsRequired()
 2318                        .HasColumnType("text")
 2319                        .HasColumnName("status");
 2320
 2321                    b.Property<string>("Type")
 2322                        .IsRequired()
 2323                        .HasColumnType("text")
 2324                        .HasColumnName("type");
 2325
 2326                    b.HasKey("Id")
 2327                        .HasName("pk_command_batches");
 2328
 2329                    b.ToTable("command_batches", "syki");
 4330                });
 331
 2332            modelBuilder.Entity("Syki.Back.Events.DomainEvent", b =>
 2333                {
 2334                    b.Property<Guid>("Id")
 2335                        .HasColumnType("uuid")
 2336                        .HasColumnName("id");
 2337
 2338                    b.Property<string>("ActivityId")
 2339                        .HasColumnType("text")
 2340                        .HasColumnName("activity_id");
 2341
 2342                    b.Property<string>("Data")
 2343                        .IsRequired()
 2344                        .HasColumnType("text")
 2345                        .HasColumnName("data");
 2346
 2347                    b.Property<int>("Duration")
 2348                        .HasColumnType("integer")
 2349                        .HasColumnName("duration");
 2350
 2351                    b.Property<Guid>("EntityId")
 2352                        .HasColumnType("uuid")
 2353                        .HasColumnName("entity_id");
 2354
 2355                    b.Property<string>("Error")
 2356                        .HasColumnType("text")
 2357                        .HasColumnName("error");
 2358
 2359                    b.Property<Guid>("InstitutionId")
 2360                        .HasColumnType("uuid")
 2361                        .HasColumnName("institution_id");
 2362
 2363                    b.Property<DateTime>("OccurredAt")
 2364                        .HasColumnType("timestamp with time zone")
 2365                        .HasColumnName("occurred_at");
 2366
 2367                    b.Property<DateTime?>("ProcessedAt")
 2368                        .HasColumnType("timestamp with time zone")
 2369                        .HasColumnName("processed_at");
 2370
 2371                    b.Property<Guid?>("ProcessorId")
 2372                        .HasColumnType("uuid")
 2373                        .HasColumnName("processor_id");
 2374
 2375                    b.Property<string>("Status")
 2376                        .IsRequired()
 2377                        .HasColumnType("text")
 2378                        .HasColumnName("status");
 2379
 2380                    b.Property<string>("Type")
 2381                        .IsRequired()
 2382                        .HasColumnType("text")
 2383                        .HasColumnName("type");
 2384
 2385                    b.HasKey("Id")
 2386                        .HasName("pk_domain_events");
 2387
 2388                    b.ToTable("domain_events", "syki");
 4389                });
 390
 2391            modelBuilder.Entity("Syki.Back.Features.Academic.CallWebhooks.WebhookCall", b =>
 2392                {
 2393                    b.Property<Guid>("Id")
 2394                        .HasColumnType("uuid")
 2395                        .HasColumnName("id");
 2396
 2397                    b.Property<int>("AttemptsCount")
 2398                        .HasColumnType("integer")
 2399                        .HasColumnName("attempts_count");
 2400
 2401                    b.Property<DateTime>("CreatedAt")
 2402                        .HasColumnType("timestamp with time zone")
 2403                        .HasColumnName("created_at");
 2404
 2405                    b.Property<string>("Event")
 2406                        .IsRequired()
 2407                        .HasColumnType("text")
 2408                        .HasColumnName("event");
 2409
 2410                    b.Property<Guid>("InstitutionId")
 2411                        .HasColumnType("uuid")
 2412                        .HasColumnName("institution_id");
 2413
 2414                    b.Property<string>("Payload")
 2415                        .IsRequired()
 2416                        .HasColumnType("text")
 2417                        .HasColumnName("payload");
 2418
 2419                    b.Property<string>("Status")
 2420                        .IsRequired()
 2421                        .HasColumnType("text")
 2422                        .HasColumnName("status");
 2423
 2424                    b.Property<Guid>("WebhookId")
 2425                        .HasColumnType("uuid")
 2426                        .HasColumnName("webhook_id");
 2427
 2428                    b.HasKey("Id")
 2429                        .HasName("pk_webhook_calls");
 2430
 2431                    b.HasIndex("InstitutionId")
 2432                        .HasDatabaseName("ix_webhook_calls_institution_id");
 2433
 2434                    b.HasIndex("WebhookId")
 2435                        .HasDatabaseName("ix_webhook_calls_webhook_id");
 2436
 2437                    b.ToTable("webhook_calls", "syki");
 4438                });
 439
 2440            modelBuilder.Entity("Syki.Back.Features.Academic.CallWebhooks.WebhookCallAttempt", b =>
 2441                {
 2442                    b.Property<Guid>("Id")
 2443                        .HasColumnType("uuid")
 2444                        .HasColumnName("id");
 2445
 2446                    b.Property<DateTime>("CreatedAt")
 2447                        .HasColumnType("timestamp with time zone")
 2448                        .HasColumnName("created_at");
 2449
 2450                    b.Property<string>("Response")
 2451                        .IsRequired()
 2452                        .HasColumnType("text")
 2453                        .HasColumnName("response");
 2454
 2455                    b.Property<string>("Status")
 2456                        .IsRequired()
 2457                        .HasColumnType("text")
 2458                        .HasColumnName("status");
 2459
 2460                    b.Property<int>("StatusCode")
 2461                        .HasColumnType("integer")
 2462                        .HasColumnName("status_code");
 2463
 2464                    b.Property<Guid>("WebhookCallId")
 2465                        .HasColumnType("uuid")
 2466                        .HasColumnName("webhook_call_id");
 2467
 2468                    b.HasKey("Id")
 2469                        .HasName("pk_webhook_call_attempts");
 2470
 2471                    b.HasIndex("WebhookCallId")
 2472                        .HasDatabaseName("ix_webhook_call_attempts_webhook_call_id");
 2473
 2474                    b.ToTable("webhook_call_attempts", "syki");
 4475                });
 476
 2477            modelBuilder.Entity("Syki.Back.Features.Academic.CreateAcademicPeriod.AcademicPeriod", b =>
 2478                {
 2479                    b.Property<string>("Id")
 2480                        .HasColumnType("text")
 2481                        .HasColumnName("id");
 2482
 2483                    b.Property<Guid>("InstitutionId")
 2484                        .HasColumnType("uuid")
 2485                        .HasColumnName("institution_id");
 2486
 2487                    b.Property<DateOnly>("EndAt")
 2488                        .HasColumnType("date")
 2489                        .HasColumnName("end_at");
 2490
 2491                    b.Property<DateOnly>("StartAt")
 2492                        .HasColumnType("date")
 2493                        .HasColumnName("start_at");
 2494
 2495                    b.HasKey("Id", "InstitutionId")
 2496                        .HasName("pk_academic_periods");
 2497
 2498                    b.HasIndex("InstitutionId")
 2499                        .HasDatabaseName("ix_academic_periods_institution_id");
 2500
 2501                    b.ToTable("academic_periods", "syki");
 4502                });
 503
 2504            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCampus.Campus", b =>
 2505                {
 2506                    b.Property<Guid>("Id")
 2507                        .HasColumnType("uuid")
 2508                        .HasColumnName("id");
 2509
 2510                    b.Property<int>("Capacity")
 2511                        .HasColumnType("integer")
 2512                        .HasColumnName("capacity");
 2513
 2514                    b.Property<string>("City")
 2515                        .IsRequired()
 2516                        .HasColumnType("text")
 2517                        .HasColumnName("city");
 2518
 2519                    b.Property<Guid>("InstitutionId")
 2520                        .HasColumnType("uuid")
 2521                        .HasColumnName("institution_id");
 2522
 2523                    b.Property<string>("Name")
 2524                        .IsRequired()
 2525                        .HasColumnType("text")
 2526                        .HasColumnName("name");
 2527
 2528                    b.Property<string>("State")
 2529                        .IsRequired()
 2530                        .HasColumnType("text")
 2531                        .HasColumnName("state");
 2532
 2533                    b.HasKey("Id")
 2534                        .HasName("pk_campi");
 2535
 2536                    b.HasIndex("InstitutionId")
 2537                        .HasDatabaseName("ix_campi_institution_id");
 2538
 2539                    b.ToTable("campi", "syki");
 4540                });
 541
 2542            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.Class", b =>
 2543                {
 2544                    b.Property<Guid>("Id")
 2545                        .HasColumnType("uuid")
 2546                        .HasColumnName("id");
 2547
 2548                    b.Property<Guid?>("CampusId")
 2549                        .HasColumnType("uuid")
 2550                        .HasColumnName("campus_id");
 2551
 2552                    b.Property<Guid>("DisciplineId")
 2553                        .HasColumnType("uuid")
 2554                        .HasColumnName("discipline_id");
 2555
 2556                    b.Property<Guid>("InstitutionId")
 2557                        .HasColumnType("uuid")
 2558                        .HasColumnName("institution_id");
 2559
 2560                    b.Property<string>("PeriodId")
 2561                        .IsRequired()
 2562                        .HasColumnType("text")
 2563                        .HasColumnName("period_id");
 2564
 2565                    b.Property<string>("Status")
 2566                        .IsRequired()
 2567                        .HasColumnType("text")
 2568                        .HasColumnName("status");
 2569
 2570                    b.Property<Guid?>("TeacherId")
 2571                        .HasColumnType("uuid")
 2572                        .HasColumnName("teacher_id");
 2573
 2574                    b.Property<int>("Vacancies")
 2575                        .HasColumnType("integer")
 2576                        .HasColumnName("vacancies");
 2577
 2578                    b.Property<int>("Workload")
 2579                        .HasColumnType("integer")
 2580                        .HasColumnName("workload");
 2581
 2582                    b.HasKey("Id")
 2583                        .HasName("pk_classes");
 2584
 2585                    b.HasIndex("CampusId")
 2586                        .HasDatabaseName("ix_classes_campus_id");
 2587
 2588                    b.HasIndex("DisciplineId")
 2589                        .HasDatabaseName("ix_classes_discipline_id");
 2590
 2591                    b.HasIndex("TeacherId")
 2592                        .HasDatabaseName("ix_classes_teacher_id");
 2593
 2594                    b.HasIndex("PeriodId", "InstitutionId")
 2595                        .HasDatabaseName("ix_classes_period_id_institution_id");
 2596
 2597                    b.ToTable("classes", "syki");
 4598                });
 599
 2600            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.ClassLesson", b =>
 2601                {
 2602                    b.Property<Guid>("Id")
 2603                        .HasColumnType("uuid")
 2604                        .HasColumnName("id");
 2605
 2606                    b.Property<Guid>("ClassId")
 2607                        .HasColumnType("uuid")
 2608                        .HasColumnName("class_id");
 2609
 2610                    b.Property<DateOnly>("Date")
 2611                        .HasColumnType("date")
 2612                        .HasColumnName("date");
 2613
 2614                    b.Property<string>("EndAt")
 2615                        .IsRequired()
 2616                        .HasColumnType("text")
 2617                        .HasColumnName("end_at");
 2618
 2619                    b.Property<int>("Number")
 2620                        .HasColumnType("integer")
 2621                        .HasColumnName("number");
 2622
 2623                    b.Property<string>("StartAt")
 2624                        .IsRequired()
 2625                        .HasColumnType("text")
 2626                        .HasColumnName("start_at");
 2627
 2628                    b.Property<string>("Status")
 2629                        .IsRequired()
 2630                        .HasColumnType("text")
 2631                        .HasColumnName("status");
 2632
 2633                    b.HasKey("Id")
 2634                        .HasName("pk_class_lessons");
 2635
 2636                    b.HasIndex("ClassId")
 2637                        .HasDatabaseName("ix_class_lessons_class_id");
 2638
 2639                    b.ToTable("class_lessons", "syki");
 4640                });
 641
 2642            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.Schedule", b =>
 2643                {
 2644                    b.Property<Guid>("Id")
 2645                        .HasColumnType("uuid")
 2646                        .HasColumnName("id");
 2647
 2648                    b.Property<Guid>("ClassId")
 2649                        .HasColumnType("uuid")
 2650                        .HasColumnName("class_id");
 2651
 2652                    b.Property<string>("Day")
 2653                        .IsRequired()
 2654                        .HasColumnType("text")
 2655                        .HasColumnName("day");
 2656
 2657                    b.Property<string>("EndAt")
 2658                        .IsRequired()
 2659                        .HasColumnType("text")
 2660                        .HasColumnName("end_at");
 2661
 2662                    b.Property<string>("StartAt")
 2663                        .IsRequired()
 2664                        .HasColumnType("text")
 2665                        .HasColumnName("start_at");
 2666
 2667                    b.HasKey("Id")
 2668                        .HasName("pk_schedules");
 2669
 2670                    b.HasIndex("ClassId")
 2671                        .HasDatabaseName("ix_schedules_class_id");
 2672
 2673                    b.ToTable("schedules", "syki");
 4674                });
 675
 2676            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClassroom.Classroom", b =>
 2677                {
 2678                    b.Property<Guid>("Id")
 2679                        .HasColumnType("uuid")
 2680                        .HasColumnName("id");
 2681
 2682                    b.Property<Guid>("CampusId")
 2683                        .HasColumnType("uuid")
 2684                        .HasColumnName("campus_id");
 2685
 2686                    b.Property<int>("Capacity")
 2687                        .HasColumnType("integer")
 2688                        .HasColumnName("capacity");
 2689
 2690                    b.Property<Guid>("InstitutionId")
 2691                        .HasColumnType("uuid")
 2692                        .HasColumnName("institution_id");
 2693
 2694                    b.Property<string>("Name")
 2695                        .IsRequired()
 2696                        .HasColumnType("text")
 2697                        .HasColumnName("name");
 2698
 2699                    b.HasKey("Id")
 2700                        .HasName("pk_classrooms");
 2701
 2702                    b.HasIndex("CampusId")
 2703                        .HasDatabaseName("ix_classrooms_campus_id");
 2704
 2705                    b.HasIndex("InstitutionId")
 2706                        .HasDatabaseName("ix_classrooms_institution_id");
 2707
 2708                    b.ToTable("classrooms", "syki");
 4709                });
 710
 2711            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClassroom.ClassroomClass", b =>
 2712                {
 2713                    b.Property<Guid>("ClassroomId")
 2714                        .HasColumnType("uuid")
 2715                        .HasColumnName("classroom_id");
 2716
 2717                    b.Property<Guid>("ClassId")
 2718                        .HasColumnType("uuid")
 2719                        .HasColumnName("class_id");
 2720
 2721                    b.Property<bool>("IsActive")
 2722                        .HasColumnType("boolean")
 2723                        .HasColumnName("is_active");
 2724
 2725                    b.HasKey("ClassroomId", "ClassId")
 2726                        .HasName("pk_classrooms__classes");
 2727
 2728                    b.HasIndex("ClassId")
 2729                        .HasDatabaseName("ix_classrooms__classes_class_id");
 2730
 2731                    b.ToTable("classrooms__classes", "syki");
 4732                });
 733
 2734            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourse.Course", b =>
 2735                {
 2736                    b.Property<Guid>("Id")
 2737                        .HasColumnType("uuid")
 2738                        .HasColumnName("id");
 2739
 2740                    b.Property<Guid>("InstitutionId")
 2741                        .HasColumnType("uuid")
 2742                        .HasColumnName("institution_id");
 2743
 2744                    b.Property<string>("Name")
 2745                        .IsRequired()
 2746                        .HasColumnType("text")
 2747                        .HasColumnName("name");
 2748
 2749                    b.Property<string>("Type")
 2750                        .IsRequired()
 2751                        .HasColumnType("text")
 2752                        .HasColumnName("type");
 2753
 2754                    b.HasKey("Id")
 2755                        .HasName("pk_courses");
 2756
 2757                    b.HasIndex("InstitutionId")
 2758                        .HasDatabaseName("ix_courses_institution_id");
 2759
 2760                    b.ToTable("courses", "syki");
 4761                });
 762
 2763            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourseCurriculum.CourseCurriculum", b =>
 2764                {
 2765                    b.Property<Guid>("Id")
 2766                        .HasColumnType("uuid")
 2767                        .HasColumnName("id");
 2768
 2769                    b.Property<Guid>("CourseId")
 2770                        .HasColumnType("uuid")
 2771                        .HasColumnName("course_id");
 2772
 2773                    b.Property<Guid>("InstitutionId")
 2774                        .HasColumnType("uuid")
 2775                        .HasColumnName("institution_id");
 2776
 2777                    b.Property<string>("Name")
 2778                        .IsRequired()
 2779                        .HasColumnType("text")
 2780                        .HasColumnName("name");
 2781
 2782                    b.HasKey("Id")
 2783                        .HasName("pk_course_curriculums");
 2784
 2785                    b.HasIndex("CourseId")
 2786                        .HasDatabaseName("ix_course_curriculums_course_id");
 2787
 2788                    b.HasIndex("InstitutionId")
 2789                        .HasDatabaseName("ix_course_curriculums_institution_id");
 2790
 2791                    b.ToTable("course_curriculums", "syki");
 4792                });
 793
 2794            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourseCurriculum.CourseCurriculumDiscipline", b =>
 2795                {
 2796                    b.Property<Guid>("CourseCurriculumId")
 2797                        .HasColumnType("uuid")
 2798                        .HasColumnName("course_curriculum_id");
 2799
 2800                    b.Property<Guid>("DisciplineId")
 2801                        .HasColumnType("uuid")
 2802                        .HasColumnName("discipline_id");
 2803
 2804                    b.Property<byte>("Credits")
 2805                        .HasColumnType("smallint")
 2806                        .HasColumnName("credits");
 2807
 2808                    b.Property<byte>("Period")
 2809                        .HasColumnType("smallint")
 2810                        .HasColumnName("period");
 2811
 2812                    b.PrimitiveCollection<List<Guid>>("PreRequisites")
 2813                        .HasColumnType("uuid[]")
 2814                        .HasColumnName("pre_requisites");
 2815
 2816                    b.Property<int>("Workload")
 2817                        .HasColumnType("integer")
 2818                        .HasColumnName("workload");
 2819
 2820                    b.HasKey("CourseCurriculumId", "DisciplineId")
 2821                        .HasName("pk_course_curriculums__disciplines");
 2822
 2823                    b.HasIndex("DisciplineId")
 2824                        .HasDatabaseName("ix_course_curriculums__disciplines_discipline_id");
 2825
 2826                    b.ToTable("course_curriculums__disciplines", "syki");
 4827                });
 828
 2829            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourseOffering.CourseOffering", b =>
 2830                {
 2831                    b.Property<Guid>("Id")
 2832                        .HasColumnType("uuid")
 2833                        .HasColumnName("id");
 2834
 2835                    b.Property<Guid>("CampusId")
 2836                        .HasColumnType("uuid")
 2837                        .HasColumnName("campus_id");
 2838
 2839                    b.Property<Guid>("CourseCurriculumId")
 2840                        .HasColumnType("uuid")
 2841                        .HasColumnName("course_curriculum_id");
 2842
 2843                    b.Property<Guid>("CourseId")
 2844                        .HasColumnType("uuid")
 2845                        .HasColumnName("course_id");
 2846
 2847                    b.Property<Guid>("InstitutionId")
 2848                        .HasColumnType("uuid")
 2849                        .HasColumnName("institution_id");
 2850
 2851                    b.Property<string>("Period")
 2852                        .IsRequired()
 2853                        .HasColumnType("text")
 2854                        .HasColumnName("period");
 2855
 2856                    b.Property<string>("Shift")
 2857                        .IsRequired()
 2858                        .HasColumnType("text")
 2859                        .HasColumnName("shift");
 2860
 2861                    b.HasKey("Id")
 2862                        .HasName("pk_course_offerings");
 2863
 2864                    b.HasIndex("CampusId")
 2865                        .HasDatabaseName("ix_course_offerings_campus_id");
 2866
 2867                    b.HasIndex("CourseCurriculumId")
 2868                        .HasDatabaseName("ix_course_offerings_course_curriculum_id");
 2869
 2870                    b.HasIndex("CourseId")
 2871                        .HasDatabaseName("ix_course_offerings_course_id");
 2872
 2873                    b.HasIndex("InstitutionId")
 2874                        .HasDatabaseName("ix_course_offerings_institution_id");
 2875
 2876                    b.HasIndex("Period", "InstitutionId")
 2877                        .HasDatabaseName("ix_course_offerings_period_institution_id");
 2878
 2879                    b.ToTable("course_offerings", "syki");
 4880                });
 881
 2882            modelBuilder.Entity("Syki.Back.Features.Academic.CreateDiscipline.CourseDiscipline", b =>
 2883                {
 2884                    b.Property<Guid>("CourseId")
 2885                        .HasColumnType("uuid")
 2886                        .HasColumnName("course_id");
 2887
 2888                    b.Property<Guid>("DisciplineId")
 2889                        .HasColumnType("uuid")
 2890                        .HasColumnName("discipline_id");
 2891
 2892                    b.HasKey("CourseId", "DisciplineId")
 2893                        .HasName("pk_courses__disciplines");
 2894
 2895                    b.HasIndex("DisciplineId")
 2896                        .HasDatabaseName("ix_courses__disciplines_discipline_id");
 2897
 2898                    b.ToTable("courses__disciplines", "syki");
 4899                });
 900
 2901            modelBuilder.Entity("Syki.Back.Features.Academic.CreateDiscipline.Discipline", b =>
 2902                {
 2903                    b.Property<Guid>("Id")
 2904                        .HasColumnType("uuid")
 2905                        .HasColumnName("id");
 2906
 2907                    b.Property<string>("Code")
 2908                        .IsRequired()
 2909                        .HasColumnType("text")
 2910                        .HasColumnName("code");
 2911
 2912                    b.Property<Guid>("InstitutionId")
 2913                        .HasColumnType("uuid")
 2914                        .HasColumnName("institution_id");
 2915
 2916                    b.Property<string>("Name")
 2917                        .IsRequired()
 2918                        .HasColumnType("text")
 2919                        .HasColumnName("name");
 2920
 2921                    b.HasKey("Id")
 2922                        .HasName("pk_disciplines");
 2923
 2924                    b.HasIndex("InstitutionId")
 2925                        .HasDatabaseName("ix_disciplines_institution_id");
 2926
 2927                    b.ToTable("disciplines", "syki");
 4928                });
 929
 2930            modelBuilder.Entity("Syki.Back.Features.Academic.CreateEnrollmentPeriod.EnrollmentPeriod", b =>
 2931                {
 2932                    b.Property<string>("Id")
 2933                        .HasColumnType("text")
 2934                        .HasColumnName("id");
 2935
 2936                    b.Property<Guid>("InstitutionId")
 2937                        .HasColumnType("uuid")
 2938                        .HasColumnName("institution_id");
 2939
 2940                    b.Property<DateOnly>("EndAt")
 2941                        .HasColumnType("date")
 2942                        .HasColumnName("end_at");
 2943
 2944                    b.Property<DateOnly>("StartAt")
 2945                        .HasColumnType("date")
 2946                        .HasColumnName("start_at");
 2947
 2948                    b.HasKey("Id", "InstitutionId")
 2949                        .HasName("pk_enrollment_periods");
 2950
 2951                    b.ToTable("enrollment_periods", "syki");
 4952                });
 953
 2954            modelBuilder.Entity("Syki.Back.Features.Academic.CreateNotification.Notification", b =>
 2955                {
 2956                    b.Property<Guid>("Id")
 2957                        .HasColumnType("uuid")
 2958                        .HasColumnName("id");
 2959
 2960                    b.Property<DateTime>("CreatedAt")
 2961                        .HasColumnType("timestamp with time zone")
 2962                        .HasColumnName("created_at");
 2963
 2964                    b.Property<string>("Description")
 2965                        .IsRequired()
 2966                        .HasColumnType("text")
 2967                        .HasColumnName("description");
 2968
 2969                    b.Property<Guid>("InstitutionId")
 2970                        .HasColumnType("uuid")
 2971                        .HasColumnName("institution_id");
 2972
 2973                    b.Property<string>("Target")
 2974                        .IsRequired()
 2975                        .HasColumnType("text")
 2976                        .HasColumnName("target");
 2977
 2978                    b.Property<bool>("Timeless")
 2979                        .HasColumnType("boolean")
 2980                        .HasColumnName("timeless");
 2981
 2982                    b.Property<string>("Title")
 2983                        .IsRequired()
 2984                        .HasColumnType("text")
 2985                        .HasColumnName("title");
 2986
 2987                    b.HasKey("Id")
 2988                        .HasName("pk_notifications");
 2989
 2990                    b.HasIndex("InstitutionId")
 2991                        .HasDatabaseName("ix_notifications_institution_id");
 2992
 2993                    b.ToTable("notifications", "syki");
 4994                });
 995
 2996            modelBuilder.Entity("Syki.Back.Features.Academic.CreateNotification.UserNotification", b =>
 2997                {
 2998                    b.Property<Guid>("UserId")
 2999                        .HasColumnType("uuid")
 21000                        .HasColumnName("user_id");
 21001
 21002                    b.Property<Guid>("NotificationId")
 21003                        .HasColumnType("uuid")
 21004                        .HasColumnName("notification_id");
 21005
 21006                    b.Property<DateTime?>("ViewedAt")
 21007                        .HasColumnType("timestamp with time zone")
 21008                        .HasColumnName("viewed_at");
 21009
 21010                    b.HasKey("UserId", "NotificationId")
 21011                        .HasName("pk_users__notifications");
 21012
 21013                    b.HasIndex("NotificationId")
 21014                        .HasDatabaseName("ix_users__notifications_notification_id");
 21015
 21016                    b.ToTable("users__notifications", "syki");
 41017                });
 1018
 21019            modelBuilder.Entity("Syki.Back.Features.Academic.CreateStudent.SykiStudent", b =>
 21020                {
 21021                    b.Property<Guid>("Id")
 21022                        .HasColumnType("uuid")
 21023                        .HasColumnName("id");
 21024
 21025                    b.Property<Guid>("CourseOfferingId")
 21026                        .HasColumnType("uuid")
 21027                        .HasColumnName("course_offering_id");
 21028
 21029                    b.Property<string>("EnrollmentCode")
 21030                        .IsRequired()
 21031                        .HasColumnType("text")
 21032                        .HasColumnName("enrollment_code");
 21033
 21034                    b.Property<Guid>("InstitutionId")
 21035                        .HasColumnType("uuid")
 21036                        .HasColumnName("institution_id");
 21037
 21038                    b.Property<string>("Name")
 21039                        .IsRequired()
 21040                        .HasColumnType("text")
 21041                        .HasColumnName("name");
 21042
 21043                    b.Property<string>("Status")
 21044                        .IsRequired()
 21045                        .HasColumnType("text")
 21046                        .HasColumnName("status");
 21047
 21048                    b.Property<decimal>("YieldCoefficient")
 21049                        .HasPrecision(4, 2)
 21050                        .HasColumnType("numeric(4,2)")
 21051                        .HasColumnName("yield_coefficient");
 21052
 21053                    b.HasKey("Id")
 21054                        .HasName("pk_students");
 21055
 21056                    b.HasIndex("CourseOfferingId")
 21057                        .HasDatabaseName("ix_students_course_offering_id");
 21058
 21059                    b.HasIndex("EnrollmentCode")
 21060                        .IsUnique()
 21061                        .HasDatabaseName("ix_students_enrollment_code");
 21062
 21063                    b.HasIndex("InstitutionId", "Id")
 21064                        .IsUnique()
 21065                        .HasDatabaseName("ix_students_institution_id_id");
 21066
 21067                    b.ToTable("students", "syki");
 41068                });
 1069
 21070            modelBuilder.Entity("Syki.Back.Features.Academic.CreateTeacher.SykiTeacher", b =>
 21071                {
 21072                    b.Property<Guid>("Id")
 21073                        .HasColumnType("uuid")
 21074                        .HasColumnName("id");
 21075
 21076                    b.Property<Guid>("InstitutionId")
 21077                        .HasColumnType("uuid")
 21078                        .HasColumnName("institution_id");
 21079
 21080                    b.Property<string>("Name")
 21081                        .IsRequired()
 21082                        .HasColumnType("text")
 21083                        .HasColumnName("name");
 21084
 21085                    b.HasKey("Id")
 21086                        .HasName("pk_teachers");
 21087
 21088                    b.HasIndex("InstitutionId", "Id")
 21089                        .IsUnique()
 21090                        .HasDatabaseName("ix_teachers_institution_id_id");
 21091
 21092                    b.ToTable("teachers", "syki");
 41093                });
 1094
 21095            modelBuilder.Entity("Syki.Back.Features.Academic.CreateTeacher.TeacherDiscipline", b =>
 21096                {
 21097                    b.Property<Guid>("SykiTeacherId")
 21098                        .HasColumnType("uuid")
 21099                        .HasColumnName("syki_teacher_id");
 21100
 21101                    b.Property<Guid>("DisciplineId")
 21102                        .HasColumnType("uuid")
 21103                        .HasColumnName("discipline_id");
 21104
 21105                    b.HasKey("SykiTeacherId", "DisciplineId")
 21106                        .HasName("pk_teachers__disciplines");
 21107
 21108                    b.HasIndex("DisciplineId")
 21109                        .HasDatabaseName("ix_teachers__disciplines_discipline_id");
 21110
 21111                    b.ToTable("teachers__disciplines", "syki");
 41112                });
 1113
 21114            modelBuilder.Entity("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookAuthentication", b =>
 21115                {
 21116                    b.Property<Guid>("Id")
 21117                        .HasColumnType("uuid")
 21118                        .HasColumnName("id");
 21119
 21120                    b.Property<string>("ApiKey")
 21121                        .IsRequired()
 21122                        .HasColumnType("text")
 21123                        .HasColumnName("api_key");
 21124
 21125                    b.Property<string>("Type")
 21126                        .IsRequired()
 21127                        .HasColumnType("text")
 21128                        .HasColumnName("type");
 21129
 21130                    b.Property<Guid>("WebhookId")
 21131                        .HasColumnType("uuid")
 21132                        .HasColumnName("webhook_id");
 21133
 21134                    b.HasKey("Id")
 21135                        .HasName("pk_webhook_authentications");
 21136
 21137                    b.HasIndex("WebhookId")
 21138                        .IsUnique()
 21139                        .HasDatabaseName("ix_webhook_authentications_webhook_id");
 21140
 21141                    b.ToTable("webhook_authentications", "syki");
 41142                });
 1143
 21144            modelBuilder.Entity("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookSubscription", b =>
 21145                {
 21146                    b.Property<Guid>("Id")
 21147                        .HasColumnType("uuid")
 21148                        .HasColumnName("id");
 21149
 21150                    b.Property<DateTime>("CreatedAt")
 21151                        .HasColumnType("timestamp with time zone")
 21152                        .HasColumnName("created_at");
 21153
 21154                    b.PrimitiveCollection<string[]>("Events")
 21155                        .IsRequired()
 21156                        .HasColumnType("text[]")
 21157                        .HasColumnName("events");
 21158
 21159                    b.Property<Guid>("InstitutionId")
 21160                        .HasColumnType("uuid")
 21161                        .HasColumnName("institution_id");
 21162
 21163                    b.Property<string>("Name")
 21164                        .IsRequired()
 21165                        .HasColumnType("text")
 21166                        .HasColumnName("name");
 21167
 21168                    b.Property<string>("Url")
 21169                        .IsRequired()
 21170                        .HasColumnType("text")
 21171                        .HasColumnName("url");
 21172
 21173                    b.HasKey("Id")
 21174                        .HasName("pk_webhook_subscriptions");
 21175
 21176                    b.HasIndex("InstitutionId")
 21177                        .HasDatabaseName("ix_webhook_subscriptions_institution_id");
 21178
 21179                    b.ToTable("webhook_subscriptions", "syki");
 41180                });
 1181
 21182            modelBuilder.Entity("Syki.Back.Features.Cross.CreateInstitution.Institution", b =>
 21183                {
 21184                    b.Property<Guid>("Id")
 21185                        .HasColumnType("uuid")
 21186                        .HasColumnName("id");
 21187
 21188                    b.Property<DateTime>("CreatedAt")
 21189                        .HasColumnType("timestamp with time zone")
 21190                        .HasColumnName("created_at");
 21191
 21192                    b.Property<string>("Name")
 21193                        .IsRequired()
 21194                        .HasColumnType("text")
 21195                        .HasColumnName("name");
 21196
 21197                    b.HasKey("Id")
 21198                        .HasName("pk_institutions");
 21199
 21200                    b.ToTable("institutions", "syki");
 41201                });
 1202
 21203            modelBuilder.Entity("Syki.Back.Features.Cross.CreateInstitution.InstitutionConfigs", b =>
 21204                {
 21205                    b.Property<Guid>("InstitutionId")
 21206                        .HasColumnType("uuid")
 21207                        .HasColumnName("institution_id");
 21208
 21209                    b.Property<decimal>("FrequencyLimit")
 21210                        .HasPrecision(4, 2)
 21211                        .HasColumnType("numeric(4,2)")
 21212                        .HasColumnName("frequency_limit");
 21213
 21214                    b.Property<decimal>("NoteLimit")
 21215                        .HasColumnType("numeric")
 21216                        .HasColumnName("note_limit");
 21217
 21218                    b.HasKey("InstitutionId")
 21219                        .HasName("pk_institution_configs");
 21220
 21221                    b.ToTable("institution_configs", "syki");
 41222                });
 1223
 21224            modelBuilder.Entity("Syki.Back.Features.Cross.CreatePendingUserRegister.UserRegister", b =>
 21225                {
 21226                    b.Property<Guid>("Id")
 21227                        .HasColumnType("uuid")
 21228                        .HasColumnName("id");
 21229
 21230                    b.Property<string>("Email")
 21231                        .IsRequired()
 21232                        .HasColumnType("text")
 21233                        .HasColumnName("email");
 21234
 21235                    b.Property<Guid>("InstitutionId")
 21236                        .HasColumnType("uuid")
 21237                        .HasColumnName("institution_id");
 21238
 21239                    b.Property<string>("Status")
 21240                        .IsRequired()
 21241                        .HasColumnType("text")
 21242                        .HasColumnName("status");
 21243
 21244                    b.HasKey("Id")
 21245                        .HasName("pk_user_registers");
 21246
 21247                    b.HasIndex("Email")
 21248                        .IsUnique()
 21249                        .HasDatabaseName("ix_user_registers_email");
 21250
 21251                    b.ToTable("user_registers", "syki");
 41252                });
 1253
 21254            modelBuilder.Entity("Syki.Back.Features.Cross.CreateUser.SykiRole", b =>
 21255                {
 21256                    b.Property<Guid>("Id")
 21257                        .ValueGeneratedOnAdd()
 21258                        .HasColumnType("uuid")
 21259                        .HasColumnName("id");
 21260
 21261                    b.Property<string>("ConcurrencyStamp")
 21262                        .IsConcurrencyToken()
 21263                        .HasColumnType("text")
 21264                        .HasColumnName("concurrency_stamp");
 21265
 21266                    b.Property<string>("Name")
 21267                        .HasMaxLength(256)
 21268                        .HasColumnType("character varying(256)")
 21269                        .HasColumnName("name");
 21270
 21271                    b.Property<string>("NormalizedName")
 21272                        .HasMaxLength(256)
 21273                        .HasColumnType("character varying(256)")
 21274                        .HasColumnName("normalized_name");
 21275
 21276                    b.HasKey("Id")
 21277                        .HasName("pk_roles");
 21278
 21279                    b.HasIndex("NormalizedName")
 21280                        .IsUnique()
 21281                        .HasDatabaseName("role_name_index");
 21282
 21283                    b.ToTable("roles", "syki");
 21284
 21285                    b.HasData(
 21286                        new
 21287                        {
 21288                            Id = new Guid("5912ebe1-9e6a-4ce1-90bf-8490534fb4e1"),
 21289                            ConcurrencyStamp = "5912ebe1-9e6a-4ce1-90bf-8490534fb4e1",
 21290                            Name = "Adm",
 21291                            NormalizedName = "ADM"
 21292                        },
 21293                        new
 21294                        {
 21295                            Id = new Guid("78691a7a-f554-42d7-a5cf-8d474b6de0dd"),
 21296                            ConcurrencyStamp = "78691a7a-f554-42d7-a5cf-8d474b6de0dd",
 21297                            Name = "Academic",
 21298                            NormalizedName = "ACADEMIC"
 21299                        },
 21300                        new
 21301                        {
 21302                            Id = new Guid("ca6f394f-6fd9-48cc-90a8-b379636a24e7"),
 21303                            ConcurrencyStamp = "ca6f394f-6fd9-48cc-90a8-b379636a24e7",
 21304                            Name = "Teacher",
 21305                            NormalizedName = "TEACHER"
 21306                        },
 21307                        new
 21308                        {
 21309                            Id = new Guid("f9ad5139-06c3-4ce2-9748-ecc498b087c7"),
 21310                            ConcurrencyStamp = "f9ad5139-06c3-4ce2-9748-ecc498b087c7",
 21311                            Name = "Student",
 21312                            NormalizedName = "STUDENT"
 21313                        });
 41314                });
 1315
 21316            modelBuilder.Entity("Syki.Back.Features.Cross.CreateUser.SykiUser", b =>
 21317                {
 21318                    b.Property<Guid>("Id")
 21319                        .ValueGeneratedOnAdd()
 21320                        .HasColumnType("uuid")
 21321                        .HasColumnName("id");
 21322
 21323                    b.Property<int>("AccessFailedCount")
 21324                        .HasColumnType("integer")
 21325                        .HasColumnName("access_failed_count");
 21326
 21327                    b.Property<string>("ConcurrencyStamp")
 21328                        .IsConcurrencyToken()
 21329                        .HasColumnType("text")
 21330                        .HasColumnName("concurrency_stamp");
 21331
 21332                    b.Property<DateTime>("CreatedAt")
 21333                        .HasColumnType("timestamp with time zone")
 21334                        .HasColumnName("created_at");
 21335
 21336                    b.Property<string>("Email")
 21337                        .HasMaxLength(256)
 21338                        .HasColumnType("character varying(256)")
 21339                        .HasColumnName("email");
 21340
 21341                    b.Property<bool>("EmailConfirmed")
 21342                        .HasColumnType("boolean")
 21343                        .HasColumnName("email_confirmed");
 21344
 21345                    b.Property<Guid>("InstitutionId")
 21346                        .HasColumnType("uuid")
 21347                        .HasColumnName("institution_id");
 21348
 21349                    b.Property<bool>("LockoutEnabled")
 21350                        .HasColumnType("boolean")
 21351                        .HasColumnName("lockout_enabled");
 21352
 21353                    b.Property<DateTimeOffset?>("LockoutEnd")
 21354                        .HasColumnType("timestamp with time zone")
 21355                        .HasColumnName("lockout_end");
 21356
 21357                    b.Property<string>("Name")
 21358                        .IsRequired()
 21359                        .HasColumnType("text")
 21360                        .HasColumnName("name");
 21361
 21362                    b.Property<string>("NormalizedEmail")
 21363                        .HasMaxLength(256)
 21364                        .HasColumnType("character varying(256)")
 21365                        .HasColumnName("normalized_email");
 21366
 21367                    b.Property<string>("NormalizedUserName")
 21368                        .HasMaxLength(256)
 21369                        .HasColumnType("character varying(256)")
 21370                        .HasColumnName("normalized_user_name");
 21371
 21372                    b.Property<string>("PasswordHash")
 21373                        .HasColumnType("text")
 21374                        .HasColumnName("password_hash");
 21375
 21376                    b.Property<string>("PhoneNumber")
 21377                        .HasColumnType("text")
 21378                        .HasColumnName("phone_number");
 21379
 21380                    b.Property<bool>("PhoneNumberConfirmed")
 21381                        .HasColumnType("boolean")
 21382                        .HasColumnName("phone_number_confirmed");
 21383
 21384                    b.Property<string>("ProfilePhoto")
 21385                        .HasColumnType("text")
 21386                        .HasColumnName("profile_photo");
 21387
 21388                    b.Property<string>("SecurityStamp")
 21389                        .HasColumnType("text")
 21390                        .HasColumnName("security_stamp");
 21391
 21392                    b.Property<bool>("TwoFactorEnabled")
 21393                        .HasColumnType("boolean")
 21394                        .HasColumnName("two_factor_enabled");
 21395
 21396                    b.Property<string>("UserName")
 21397                        .HasMaxLength(256)
 21398                        .HasColumnType("character varying(256)")
 21399                        .HasColumnName("user_name");
 21400
 21401                    b.HasKey("Id")
 21402                        .HasName("pk_users");
 21403
 21404                    b.HasAlternateKey("InstitutionId", "Id")
 21405                        .HasName("ak_asp_net_users_institution_id_id");
 21406
 21407                    b.HasIndex("NormalizedEmail")
 21408                        .HasDatabaseName("email_index");
 21409
 21410                    b.HasIndex("NormalizedUserName")
 21411                        .IsUnique()
 21412                        .HasDatabaseName("user_name_index");
 21413
 21414                    b.ToTable("users", "syki");
 41415                });
 1416
 21417            modelBuilder.Entity("Syki.Back.Features.Cross.SendResetPasswordToken.ResetPasswordToken", b =>
 21418                {
 21419                    b.Property<Guid>("Id")
 21420                        .HasColumnType("uuid")
 21421                        .HasColumnName("id");
 21422
 21423                    b.Property<DateTime>("CreatedAt")
 21424                        .HasColumnType("timestamp with time zone")
 21425                        .HasColumnName("created_at");
 21426
 21427                    b.Property<Guid>("InstitutionId")
 21428                        .HasColumnType("uuid")
 21429                        .HasColumnName("institution_id");
 21430
 21431                    b.Property<string>("Token")
 21432                        .IsRequired()
 21433                        .HasColumnType("text")
 21434                        .HasColumnName("token");
 21435
 21436                    b.Property<DateTime?>("UsedAt")
 21437                        .HasColumnType("timestamp with time zone")
 21438                        .HasColumnName("used_at");
 21439
 21440                    b.Property<Guid>("UserId")
 21441                        .HasColumnType("uuid")
 21442                        .HasColumnName("user_id");
 21443
 21444                    b.HasKey("Id")
 21445                        .HasName("pk_reset_password_tokens");
 21446
 21447                    b.HasIndex("InstitutionId")
 21448                        .HasDatabaseName("ix_reset_password_tokens_institution_id");
 21449
 21450                    b.HasIndex("Token")
 21451                        .IsUnique()
 21452                        .HasDatabaseName("ix_reset_password_tokens_token");
 21453
 21454                    b.HasIndex("UserId")
 21455                        .HasDatabaseName("ix_reset_password_tokens_user_id");
 21456
 21457                    b.ToTable("reset_password_tokens", "syki");
 41458                });
 1459
 21460            modelBuilder.Entity("Syki.Back.Features.Cross.SetupFeatureFlags.FeatureFlags", b =>
 21461                {
 21462                    b.Property<Guid>("Id")
 21463                        .HasColumnType("uuid")
 21464                        .HasColumnName("id");
 21465
 21466                    b.Property<bool>("CrossLogin")
 21467                        .HasColumnType("boolean")
 21468                        .HasColumnName("cross_login");
 21469
 21470                    b.HasKey("Id")
 21471                        .HasName("pk_feature_flags");
 21472
 21473                    b.ToTable("feature_flags", "syki");
 41474                });
 1475
 21476            modelBuilder.Entity("Syki.Back.Features.Student.CreateClassActivityWork.ClassActivityWork", b =>
 21477                {
 21478                    b.Property<Guid>("Id")
 21479                        .HasColumnType("uuid")
 21480                        .HasColumnName("id");
 21481
 21482                    b.Property<Guid>("ClassActivityId")
 21483                        .HasColumnType("uuid")
 21484                        .HasColumnName("class_activity_id");
 21485
 21486                    b.Property<string>("Link")
 21487                        .HasColumnType("text")
 21488                        .HasColumnName("link");
 21489
 21490                    b.Property<decimal>("Note")
 21491                        .HasColumnType("numeric")
 21492                        .HasColumnName("note");
 21493
 21494                    b.Property<string>("Status")
 21495                        .IsRequired()
 21496                        .HasColumnType("text")
 21497                        .HasColumnName("status");
 21498
 21499                    b.Property<Guid>("SykiStudentId")
 21500                        .HasColumnType("uuid")
 21501                        .HasColumnName("syki_student_id");
 21502
 21503                    b.HasKey("Id")
 21504                        .HasName("pk_class_activity_works");
 21505
 21506                    b.HasIndex("ClassActivityId")
 21507                        .HasDatabaseName("ix_class_activity_works_class_activity_id");
 21508
 21509                    b.HasIndex("SykiStudentId")
 21510                        .HasDatabaseName("ix_class_activity_works_syki_student_id");
 21511
 21512                    b.ToTable("class_activity_works", "syki");
 41513                });
 1514
 21515            modelBuilder.Entity("Syki.Back.Features.Student.CreateStudentEnrollment.ClassStudent", b =>
 21516                {
 21517                    b.Property<Guid>("ClassId")
 21518                        .HasColumnType("uuid")
 21519                        .HasColumnName("class_id");
 21520
 21521                    b.Property<Guid>("SykiStudentId")
 21522                        .HasColumnType("uuid")
 21523                        .HasColumnName("syki_student_id");
 21524
 21525                    b.Property<string>("StudentDisciplineStatus")
 21526                        .IsRequired()
 21527                        .HasColumnType("text")
 21528                        .HasColumnName("student_discipline_status");
 21529
 21530                    b.HasKey("ClassId", "SykiStudentId")
 21531                        .HasName("pk_classes__students");
 21532
 21533                    b.HasIndex("SykiStudentId")
 21534                        .HasDatabaseName("ix_classes__students_syki_student_id");
 21535
 21536                    b.ToTable("classes__students", "syki");
 41537                });
 1538
 21539            modelBuilder.Entity("Syki.Back.Features.Teacher.AddClassActivityNote.StudentClassNote", b =>
 21540                {
 21541                    b.Property<Guid>("Id")
 21542                        .HasColumnType("uuid")
 21543                        .HasColumnName("id");
 21544
 21545                    b.Property<Guid>("ClassId")
 21546                        .HasColumnType("uuid")
 21547                        .HasColumnName("class_id");
 21548
 21549                    b.Property<decimal>("Note")
 21550                        .HasPrecision(4, 2)
 21551                        .HasColumnType("numeric(4,2)")
 21552                        .HasColumnName("note");
 21553
 21554                    b.Property<Guid>("StudentId")
 21555                        .HasColumnType("uuid")
 21556                        .HasColumnName("student_id");
 21557
 21558                    b.Property<string>("Type")
 21559                        .IsRequired()
 21560                        .HasColumnType("text")
 21561                        .HasColumnName("type");
 21562
 21563                    b.HasKey("Id")
 21564                        .HasName("pk_student_class_notes");
 21565
 21566                    b.HasIndex("StudentId")
 21567                        .HasDatabaseName("ix_student_class_notes_student_id");
 21568
 21569                    b.HasIndex("ClassId", "StudentId", "Type")
 21570                        .IsUnique()
 21571                        .HasDatabaseName("ix_student_class_notes_class_id_student_id_type");
 21572
 21573                    b.ToTable("student_class_notes", "syki");
 41574                });
 1575
 21576            modelBuilder.Entity("Syki.Back.Features.Teacher.CreateClassActivity.ClassActivity", b =>
 21577                {
 21578                    b.Property<Guid>("Id")
 21579                        .HasColumnType("uuid")
 21580                        .HasColumnName("id");
 21581
 21582                    b.Property<Guid>("ClassId")
 21583                        .HasColumnType("uuid")
 21584                        .HasColumnName("class_id");
 21585
 21586                    b.Property<DateTime>("CreatedAt")
 21587                        .HasColumnType("timestamp with time zone")
 21588                        .HasColumnName("created_at");
 21589
 21590                    b.Property<string>("Description")
 21591                        .IsRequired()
 21592                        .HasColumnType("text")
 21593                        .HasColumnName("description");
 21594
 21595                    b.Property<DateOnly>("DueDate")
 21596                        .HasColumnType("date")
 21597                        .HasColumnName("due_date");
 21598
 21599                    b.Property<string>("DueHour")
 21600                        .IsRequired()
 21601                        .HasColumnType("text")
 21602                        .HasColumnName("due_hour");
 21603
 21604                    b.Property<string>("Note")
 21605                        .IsRequired()
 21606                        .HasColumnType("text")
 21607                        .HasColumnName("note");
 21608
 21609                    b.Property<string>("Status")
 21610                        .IsRequired()
 21611                        .HasColumnType("text")
 21612                        .HasColumnName("status");
 21613
 21614                    b.Property<string>("Title")
 21615                        .IsRequired()
 21616                        .HasColumnType("text")
 21617                        .HasColumnName("title");
 21618
 21619                    b.Property<string>("Type")
 21620                        .IsRequired()
 21621                        .HasColumnType("text")
 21622                        .HasColumnName("type");
 21623
 21624                    b.Property<int>("Weight")
 21625                        .HasColumnType("integer")
 21626                        .HasColumnName("weight");
 21627
 21628                    b.HasKey("Id")
 21629                        .HasName("pk_class_activities");
 21630
 21631                    b.HasIndex("ClassId")
 21632                        .HasDatabaseName("ix_class_activities_class_id");
 21633
 21634                    b.ToTable("class_activities", "syki");
 41635                });
 1636
 21637            modelBuilder.Entity("Syki.Back.Features.Teacher.CreateLessonAttendance.ClassLessonAttendance", b =>
 21638                {
 21639                    b.Property<Guid>("Id")
 21640                        .HasColumnType("uuid")
 21641                        .HasColumnName("id");
 21642
 21643                    b.Property<Guid>("ClassId")
 21644                        .HasColumnType("uuid")
 21645                        .HasColumnName("class_id");
 21646
 21647                    b.Property<Guid>("LessonId")
 21648                        .HasColumnType("uuid")
 21649                        .HasColumnName("lesson_id");
 21650
 21651                    b.Property<bool>("Present")
 21652                        .HasColumnType("boolean")
 21653                        .HasColumnName("present");
 21654
 21655                    b.Property<Guid>("StudentId")
 21656                        .HasColumnType("uuid")
 21657                        .HasColumnName("student_id");
 21658
 21659                    b.HasKey("Id")
 21660                        .HasName("pk_class_lesson_attendances");
 21661
 21662                    b.HasIndex("ClassId")
 21663                        .HasDatabaseName("ix_class_lesson_attendances_class_id");
 21664
 21665                    b.HasIndex("StudentId")
 21666                        .HasDatabaseName("ix_class_lesson_attendances_student_id");
 21667
 21668                    b.HasIndex("LessonId", "StudentId")
 21669                        .IsUnique()
 21670                        .HasDatabaseName("ix_class_lesson_attendances_lesson_id_student_id");
 21671
 21672                    b.ToTable("class_lesson_attendances", "syki");
 41673                });
 1674
 21675            modelBuilder.Entity("Syki.Back.Metrics.RequestMetrics", b =>
 21676                {
 21677                    b.Property<Guid>("Id")
 21678                        .HasColumnType("uuid")
 21679                        .HasColumnName("id");
 21680
 21681                    b.Property<DateTime>("Start")
 21682                        .HasColumnType("timestamp with time zone")
 21683                        .HasColumnName("start");
 21684
 21685                    b.Property<DateTime>("Stop")
 21686                        .HasColumnType("timestamp with time zone")
 21687                        .HasColumnName("stop");
 21688
 21689                    b.HasKey("Id")
 21690                        .HasName("pk_request_metrics");
 21691
 21692                    b.ToTable("request_metrics", "syki");
 41693                });
 1694
 21695            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<System.Guid>", b =>
 21696                {
 21697                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiRole", null)
 21698                        .WithMany()
 21699                        .HasForeignKey("RoleId")
 21700                        .OnDelete(DeleteBehavior.Cascade)
 21701                        .IsRequired()
 21702                        .HasConstraintName("fk_role_claims_asp_net_roles_role_id");
 41703                });
 1704
 21705            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<System.Guid>", b =>
 21706                {
 21707                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 21708                        .WithMany()
 21709                        .HasForeignKey("UserId")
 21710                        .OnDelete(DeleteBehavior.Cascade)
 21711                        .IsRequired()
 21712                        .HasConstraintName("fk_user_claims_asp_net_users_user_id");
 41713                });
 1714
 21715            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<System.Guid>", b =>
 21716                {
 21717                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 21718                        .WithMany()
 21719                        .HasForeignKey("UserId")
 21720                        .OnDelete(DeleteBehavior.Cascade)
 21721                        .IsRequired()
 21722                        .HasConstraintName("fk_user_logins_asp_net_users_user_id");
 41723                });
 1724
 21725            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<System.Guid>", b =>
 21726                {
 21727                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiRole", null)
 21728                        .WithMany()
 21729                        .HasForeignKey("RoleId")
 21730                        .OnDelete(DeleteBehavior.Cascade)
 21731                        .IsRequired()
 21732                        .HasConstraintName("fk_user_roles_asp_net_roles_role_id");
 21733
 21734                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 21735                        .WithMany()
 21736                        .HasForeignKey("UserId")
 21737                        .OnDelete(DeleteBehavior.Cascade)
 21738                        .IsRequired()
 21739                        .HasConstraintName("fk_user_roles_asp_net_users_user_id");
 41740                });
 1741
 21742            modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<System.Guid>", b =>
 21743                {
 21744                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 21745                        .WithMany()
 21746                        .HasForeignKey("UserId")
 21747                        .OnDelete(DeleteBehavior.Cascade)
 21748                        .IsRequired()
 21749                        .HasConstraintName("fk_user_tokens_asp_net_users_user_id");
 41750                });
 1751
 21752            modelBuilder.Entity("Syki.Back.Audit.AuditLog", b =>
 21753                {
 21754                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 21755                        .WithMany()
 21756                        .HasForeignKey("InstitutionId", "UserId")
 21757                        .HasPrincipalKey("InstitutionId", "Id")
 21758                        .OnDelete(DeleteBehavior.Cascade)
 21759                        .IsRequired()
 21760                        .HasConstraintName("fk_audit_logs_asp_net_users_institution_id_user_id");
 41761                });
 1762
 21763            modelBuilder.Entity("Syki.Back.Features.Academic.CallWebhooks.WebhookCall", b =>
 21764                {
 21765                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 21766                        .WithMany("WebhookCalls")
 21767                        .HasForeignKey("InstitutionId")
 21768                        .OnDelete(DeleteBehavior.Cascade)
 21769                        .IsRequired()
 21770                        .HasConstraintName("fk_webhook_calls_institutions_institution_id");
 21771
 21772                    b.HasOne("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookSubscription", null)
 21773                        .WithMany("Calls")
 21774                        .HasForeignKey("WebhookId")
 21775                        .OnDelete(DeleteBehavior.Cascade)
 21776                        .IsRequired()
 21777                        .HasConstraintName("fk_webhook_calls_webhook_subscriptions_webhook_id");
 41778                });
 1779
 21780            modelBuilder.Entity("Syki.Back.Features.Academic.CallWebhooks.WebhookCallAttempt", b =>
 21781                {
 21782                    b.HasOne("Syki.Back.Features.Academic.CallWebhooks.WebhookCall", null)
 21783                        .WithMany("Attempts")
 21784                        .HasForeignKey("WebhookCallId")
 21785                        .OnDelete(DeleteBehavior.Cascade)
 21786                        .IsRequired()
 21787                        .HasConstraintName("fk_webhook_call_attempts_webhook_calls_webhook_call_id");
 41788                });
 1789
 21790            modelBuilder.Entity("Syki.Back.Features.Academic.CreateAcademicPeriod.AcademicPeriod", b =>
 21791                {
 21792                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 21793                        .WithMany("AcademicPeriods")
 21794                        .HasForeignKey("InstitutionId")
 21795                        .OnDelete(DeleteBehavior.Cascade)
 21796                        .IsRequired()
 21797                        .HasConstraintName("fk_academic_periods_institutions_institution_id");
 41798                });
 1799
 21800            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCampus.Campus", b =>
 21801                {
 21802                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 21803                        .WithMany("Campi")
 21804                        .HasForeignKey("InstitutionId")
 21805                        .OnDelete(DeleteBehavior.Cascade)
 21806                        .IsRequired()
 21807                        .HasConstraintName("fk_campi_institutions_institution_id");
 41808                });
 1809
 21810            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.Class", b =>
 21811                {
 21812                    b.HasOne("Syki.Back.Features.Academic.CreateCampus.Campus", null)
 21813                        .WithMany()
 21814                        .HasForeignKey("CampusId")
 21815                        .HasConstraintName("fk_classes_campi_campus_id");
 21816
 21817                    b.HasOne("Syki.Back.Features.Academic.CreateDiscipline.Discipline", "Discipline")
 21818                        .WithMany()
 21819                        .HasForeignKey("DisciplineId")
 21820                        .OnDelete(DeleteBehavior.Cascade)
 21821                        .IsRequired()
 21822                        .HasConstraintName("fk_classes_disciplines_discipline_id");
 21823
 21824                    b.HasOne("Syki.Back.Features.Academic.CreateTeacher.SykiTeacher", "Teacher")
 21825                        .WithMany()
 21826                        .HasForeignKey("TeacherId")
 21827                        .HasConstraintName("fk_classes_teachers_teacher_id");
 21828
 21829                    b.HasOne("Syki.Back.Features.Academic.CreateAcademicPeriod.AcademicPeriod", "Period")
 21830                        .WithMany()
 21831                        .HasForeignKey("PeriodId", "InstitutionId")
 21832                        .OnDelete(DeleteBehavior.Cascade)
 21833                        .IsRequired()
 21834                        .HasConstraintName("fk_classes_academic_periods_period_id_institution_id");
 21835
 21836                    b.Navigation("Discipline");
 21837
 21838                    b.Navigation("Period");
 21839
 21840                    b.Navigation("Teacher");
 41841                });
 1842
 21843            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.ClassLesson", b =>
 21844                {
 21845                    b.HasOne("Syki.Back.Features.Academic.CreateClass.Class", null)
 21846                        .WithMany("Lessons")
 21847                        .HasForeignKey("ClassId")
 21848                        .OnDelete(DeleteBehavior.Cascade)
 21849                        .IsRequired()
 21850                        .HasConstraintName("fk_class_lessons_classes_class_id");
 41851                });
 1852
 21853            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.Schedule", b =>
 21854                {
 21855                    b.HasOne("Syki.Back.Features.Academic.CreateClass.Class", null)
 21856                        .WithMany("Schedules")
 21857                        .HasForeignKey("ClassId")
 21858                        .OnDelete(DeleteBehavior.Cascade)
 21859                        .IsRequired()
 21860                        .HasConstraintName("fk_schedules_classes_class_id");
 41861                });
 1862
 21863            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClassroom.Classroom", b =>
 21864                {
 21865                    b.HasOne("Syki.Back.Features.Academic.CreateCampus.Campus", null)
 21866                        .WithMany()
 21867                        .HasForeignKey("CampusId")
 21868                        .OnDelete(DeleteBehavior.Cascade)
 21869                        .IsRequired()
 21870                        .HasConstraintName("fk_classrooms_campi_campus_id");
 21871
 21872                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 21873                        .WithMany("Classrooms")
 21874                        .HasForeignKey("InstitutionId")
 21875                        .OnDelete(DeleteBehavior.Cascade)
 21876                        .IsRequired()
 21877                        .HasConstraintName("fk_classrooms_institutions_institution_id");
 41878                });
 1879
 21880            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClassroom.ClassroomClass", b =>
 21881                {
 21882                    b.HasOne("Syki.Back.Features.Academic.CreateClass.Class", null)
 21883                        .WithMany()
 21884                        .HasForeignKey("ClassId")
 21885                        .OnDelete(DeleteBehavior.Cascade)
 21886                        .IsRequired()
 21887                        .HasConstraintName("fk_classrooms__classes_classes_class_id");
 21888
 21889                    b.HasOne("Syki.Back.Features.Academic.CreateClassroom.Classroom", null)
 21890                        .WithMany()
 21891                        .HasForeignKey("ClassroomId")
 21892                        .OnDelete(DeleteBehavior.Cascade)
 21893                        .IsRequired()
 21894                        .HasConstraintName("fk_classrooms__classes_classrooms_classroom_id");
 41895                });
 1896
 21897            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourse.Course", b =>
 21898                {
 21899                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 21900                        .WithMany("Courses")
 21901                        .HasForeignKey("InstitutionId")
 21902                        .OnDelete(DeleteBehavior.Cascade)
 21903                        .IsRequired()
 21904                        .HasConstraintName("fk_courses_institutions_institution_id");
 41905                });
 1906
 21907            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourseCurriculum.CourseCurriculum", b =>
 21908                {
 21909                    b.HasOne("Syki.Back.Features.Academic.CreateCourse.Course", "Course")
 21910                        .WithMany("CourseCurriculums")
 21911                        .HasForeignKey("CourseId")
 21912                        .OnDelete(DeleteBehavior.Cascade)
 21913                        .IsRequired()
 21914                        .HasConstraintName("fk_course_curriculums_courses_course_id");
 21915
 21916                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 21917                        .WithMany("CourseCurriculums")
 21918                        .HasForeignKey("InstitutionId")
 21919                        .OnDelete(DeleteBehavior.Cascade)
 21920                        .IsRequired()
 21921                        .HasConstraintName("fk_course_curriculums_institutions_institution_id");
 21922
 21923                    b.Navigation("Course");
 41924                });
 1925
 21926            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourseCurriculum.CourseCurriculumDiscipline", b =>
 21927                {
 21928                    b.HasOne("Syki.Back.Features.Academic.CreateCourseCurriculum.CourseCurriculum", null)
 21929                        .WithMany("Links")
 21930                        .HasForeignKey("CourseCurriculumId")
 21931                        .OnDelete(DeleteBehavior.Cascade)
 21932                        .IsRequired()
 21933                        .HasConstraintName("fk_course_curriculums__disciplines_course_curriculums_course_c");
 21934
 21935                    b.HasOne("Syki.Back.Features.Academic.CreateDiscipline.Discipline", null)
 21936                        .WithMany()
 21937                        .HasForeignKey("DisciplineId")
 21938                        .OnDelete(DeleteBehavior.Cascade)
 21939                        .IsRequired()
 21940                        .HasConstraintName("fk_course_curriculums__disciplines_disciplines_discipline_id");
 41941                });
 1942
 21943            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourseOffering.CourseOffering", b =>
 21944                {
 21945                    b.HasOne("Syki.Back.Features.Academic.CreateCampus.Campus", "Campus")
 21946                        .WithMany()
 21947                        .HasForeignKey("CampusId")
 21948                        .OnDelete(DeleteBehavior.Cascade)
 21949                        .IsRequired()
 21950                        .HasConstraintName("fk_course_offerings_campi_campus_id");
 21951
 21952                    b.HasOne("Syki.Back.Features.Academic.CreateCourseCurriculum.CourseCurriculum", "CourseCurriculum")
 21953                        .WithMany()
 21954                        .HasForeignKey("CourseCurriculumId")
 21955                        .OnDelete(DeleteBehavior.Cascade)
 21956                        .IsRequired()
 21957                        .HasConstraintName("fk_course_offerings_course_curriculums_course_curriculum_id");
 21958
 21959                    b.HasOne("Syki.Back.Features.Academic.CreateCourse.Course", "Course")
 21960                        .WithMany()
 21961                        .HasForeignKey("CourseId")
 21962                        .OnDelete(DeleteBehavior.Cascade)
 21963                        .IsRequired()
 21964                        .HasConstraintName("fk_course_offerings_courses_course_id");
 21965
 21966                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 21967                        .WithMany("CourseOfferings")
 21968                        .HasForeignKey("InstitutionId")
 21969                        .OnDelete(DeleteBehavior.Cascade)
 21970                        .IsRequired()
 21971                        .HasConstraintName("fk_course_offerings_institutions_institution_id");
 21972
 21973                    b.HasOne("Syki.Back.Features.Academic.CreateAcademicPeriod.AcademicPeriod", null)
 21974                        .WithMany()
 21975                        .HasForeignKey("Period", "InstitutionId")
 21976                        .OnDelete(DeleteBehavior.Cascade)
 21977                        .IsRequired()
 21978                        .HasConstraintName("fk_course_offerings_academic_periods_period_institution_id");
 21979
 21980                    b.Navigation("Campus");
 21981
 21982                    b.Navigation("Course");
 21983
 21984                    b.Navigation("CourseCurriculum");
 41985                });
 1986
 21987            modelBuilder.Entity("Syki.Back.Features.Academic.CreateDiscipline.CourseDiscipline", b =>
 21988                {
 21989                    b.HasOne("Syki.Back.Features.Academic.CreateCourse.Course", null)
 21990                        .WithMany("Links")
 21991                        .HasForeignKey("CourseId")
 21992                        .OnDelete(DeleteBehavior.Cascade)
 21993                        .IsRequired()
 21994                        .HasConstraintName("fk_courses__disciplines_courses_course_id");
 21995
 21996                    b.HasOne("Syki.Back.Features.Academic.CreateDiscipline.Discipline", null)
 21997                        .WithMany("Links")
 21998                        .HasForeignKey("DisciplineId")
 21999                        .OnDelete(DeleteBehavior.Cascade)
 22000                        .IsRequired()
 22001                        .HasConstraintName("fk_courses__disciplines_disciplines_discipline_id");
 42002                });
 2003
 22004            modelBuilder.Entity("Syki.Back.Features.Academic.CreateDiscipline.Discipline", b =>
 22005                {
 22006                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22007                        .WithMany("Disciplines")
 22008                        .HasForeignKey("InstitutionId")
 22009                        .OnDelete(DeleteBehavior.Cascade)
 22010                        .IsRequired()
 22011                        .HasConstraintName("fk_disciplines_institutions_institution_id");
 42012                });
 2013
 22014            modelBuilder.Entity("Syki.Back.Features.Academic.CreateEnrollmentPeriod.EnrollmentPeriod", b =>
 22015                {
 22016                    b.HasOne("Syki.Back.Features.Academic.CreateAcademicPeriod.AcademicPeriod", null)
 22017                        .WithOne()
 22018                        .HasForeignKey("Syki.Back.Features.Academic.CreateEnrollmentPeriod.EnrollmentPeriod", "Id", "Ins
 22019                        .OnDelete(DeleteBehavior.Cascade)
 22020                        .IsRequired()
 22021                        .HasConstraintName("fk_enrollment_periods_academic_periods_id_institution_id");
 42022                });
 2023
 22024            modelBuilder.Entity("Syki.Back.Features.Academic.CreateNotification.Notification", b =>
 22025                {
 22026                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22027                        .WithMany("Notifications")
 22028                        .HasForeignKey("InstitutionId")
 22029                        .OnDelete(DeleteBehavior.Cascade)
 22030                        .IsRequired()
 22031                        .HasConstraintName("fk_notifications_institutions_institution_id");
 42032                });
 2033
 22034            modelBuilder.Entity("Syki.Back.Features.Academic.CreateNotification.UserNotification", b =>
 22035                {
 22036                    b.HasOne("Syki.Back.Features.Academic.CreateNotification.Notification", "Notification")
 22037                        .WithMany("Users")
 22038                        .HasForeignKey("NotificationId")
 22039                        .OnDelete(DeleteBehavior.Cascade)
 22040                        .IsRequired()
 22041                        .HasConstraintName("fk_users__notifications_notifications_notification_id");
 22042
 22043                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 22044                        .WithMany()
 22045                        .HasForeignKey("UserId")
 22046                        .OnDelete(DeleteBehavior.Cascade)
 22047                        .IsRequired()
 22048                        .HasConstraintName("fk_users__notifications_asp_net_users_user_id");
 22049
 22050                    b.Navigation("Notification");
 42051                });
 2052
 22053            modelBuilder.Entity("Syki.Back.Features.Academic.CreateStudent.SykiStudent", b =>
 22054                {
 22055                    b.HasOne("Syki.Back.Features.Academic.CreateCourseOffering.CourseOffering", "CourseOffering")
 22056                        .WithMany()
 22057                        .HasForeignKey("CourseOfferingId")
 22058                        .OnDelete(DeleteBehavior.Cascade)
 22059                        .IsRequired()
 22060                        .HasConstraintName("fk_students_course_offerings_course_offering_id");
 22061
 22062                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22063                        .WithMany("Students")
 22064                        .HasForeignKey("InstitutionId")
 22065                        .OnDelete(DeleteBehavior.Cascade)
 22066                        .IsRequired()
 22067                        .HasConstraintName("fk_students_institutions_institution_id");
 22068
 22069                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", "User")
 22070                        .WithOne()
 22071                        .HasForeignKey("Syki.Back.Features.Academic.CreateStudent.SykiStudent", "InstitutionId", "Id")
 22072                        .HasPrincipalKey("Syki.Back.Features.Cross.CreateUser.SykiUser", "InstitutionId", "Id")
 22073                        .OnDelete(DeleteBehavior.Cascade)
 22074                        .IsRequired()
 22075                        .HasConstraintName("fk_students_asp_net_users_institution_id_id");
 22076
 22077                    b.Navigation("CourseOffering");
 22078
 22079                    b.Navigation("User");
 42080                });
 2081
 22082            modelBuilder.Entity("Syki.Back.Features.Academic.CreateTeacher.SykiTeacher", b =>
 22083                {
 22084                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22085                        .WithMany("Teachers")
 22086                        .HasForeignKey("InstitutionId")
 22087                        .OnDelete(DeleteBehavior.Cascade)
 22088                        .IsRequired()
 22089                        .HasConstraintName("fk_teachers_institutions_institution_id");
 22090
 22091                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 22092                        .WithOne()
 22093                        .HasForeignKey("Syki.Back.Features.Academic.CreateTeacher.SykiTeacher", "InstitutionId", "Id")
 22094                        .HasPrincipalKey("Syki.Back.Features.Cross.CreateUser.SykiUser", "InstitutionId", "Id")
 22095                        .OnDelete(DeleteBehavior.Cascade)
 22096                        .IsRequired()
 22097                        .HasConstraintName("fk_teachers_asp_net_users_institution_id_id");
 42098                });
 2099
 22100            modelBuilder.Entity("Syki.Back.Features.Academic.CreateTeacher.TeacherDiscipline", b =>
 22101                {
 22102                    b.HasOne("Syki.Back.Features.Academic.CreateDiscipline.Discipline", null)
 22103                        .WithMany()
 22104                        .HasForeignKey("DisciplineId")
 22105                        .OnDelete(DeleteBehavior.Cascade)
 22106                        .IsRequired()
 22107                        .HasConstraintName("fk_teachers__disciplines_disciplines_discipline_id");
 22108
 22109                    b.HasOne("Syki.Back.Features.Academic.CreateTeacher.SykiTeacher", null)
 22110                        .WithMany()
 22111                        .HasForeignKey("SykiTeacherId")
 22112                        .OnDelete(DeleteBehavior.Cascade)
 22113                        .IsRequired()
 22114                        .HasConstraintName("fk_teachers__disciplines_teachers_syki_teacher_id");
 42115                });
 2116
 22117            modelBuilder.Entity("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookAuthentication", b =>
 22118                {
 22119                    b.HasOne("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookSubscription", null)
 22120                        .WithOne("Authentication")
 22121                        .HasForeignKey("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookAuthentication", "W
 22122                        .HasConstraintName("fk_webhook_authentications_webhook_subscriptions_webhook_id");
 42123                });
 2124
 22125            modelBuilder.Entity("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookSubscription", b =>
 22126                {
 22127                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22128                        .WithMany("Webhooks")
 22129                        .HasForeignKey("InstitutionId")
 22130                        .OnDelete(DeleteBehavior.Cascade)
 22131                        .IsRequired()
 22132                        .HasConstraintName("fk_webhook_subscriptions_institutions_institution_id");
 42133                });
 2134
 22135            modelBuilder.Entity("Syki.Back.Features.Cross.CreateInstitution.InstitutionConfigs", b =>
 22136                {
 22137                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22138                        .WithOne("Configs")
 22139                        .HasForeignKey("Syki.Back.Features.Cross.CreateInstitution.InstitutionConfigs", "InstitutionId")
 22140                        .OnDelete(DeleteBehavior.Cascade)
 22141                        .IsRequired()
 22142                        .HasConstraintName("fk_institution_configs_institutions_institution_id");
 42143                });
 2144
 22145            modelBuilder.Entity("Syki.Back.Features.Cross.CreateUser.SykiUser", b =>
 22146                {
 22147                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22148                        .WithMany("Users")
 22149                        .HasForeignKey("InstitutionId")
 22150                        .OnDelete(DeleteBehavior.Cascade)
 22151                        .IsRequired()
 22152                        .HasConstraintName("fk_users_institutions_institution_id");
 42153                });
 2154
 22155            modelBuilder.Entity("Syki.Back.Features.Cross.SendResetPasswordToken.ResetPasswordToken", b =>
 22156                {
 22157                    b.HasOne("Syki.Back.Features.Cross.CreateInstitution.Institution", null)
 22158                        .WithMany()
 22159                        .HasForeignKey("InstitutionId")
 22160                        .OnDelete(DeleteBehavior.Cascade)
 22161                        .IsRequired()
 22162                        .HasConstraintName("fk_reset_password_tokens_institutions_institution_id");
 22163
 22164                    b.HasOne("Syki.Back.Features.Cross.CreateUser.SykiUser", null)
 22165                        .WithMany()
 22166                        .HasForeignKey("UserId")
 22167                        .OnDelete(DeleteBehavior.Cascade)
 22168                        .IsRequired()
 22169                        .HasConstraintName("fk_reset_password_tokens_asp_net_users_user_id");
 42170                });
 2171
 22172            modelBuilder.Entity("Syki.Back.Features.Student.CreateClassActivityWork.ClassActivityWork", b =>
 22173                {
 22174                    b.HasOne("Syki.Back.Features.Teacher.CreateClassActivity.ClassActivity", null)
 22175                        .WithMany("Works")
 22176                        .HasForeignKey("ClassActivityId")
 22177                        .OnDelete(DeleteBehavior.Cascade)
 22178                        .IsRequired()
 22179                        .HasConstraintName("fk_class_activity_works_class_activities_class_activity_id");
 22180
 22181                    b.HasOne("Syki.Back.Features.Academic.CreateStudent.SykiStudent", "SykiStudent")
 22182                        .WithMany()
 22183                        .HasForeignKey("SykiStudentId")
 22184                        .OnDelete(DeleteBehavior.Cascade)
 22185                        .IsRequired()
 22186                        .HasConstraintName("fk_class_activity_works_students_syki_student_id");
 22187
 22188                    b.Navigation("SykiStudent");
 42189                });
 2190
 22191            modelBuilder.Entity("Syki.Back.Features.Student.CreateStudentEnrollment.ClassStudent", b =>
 22192                {
 22193                    b.HasOne("Syki.Back.Features.Academic.CreateClass.Class", null)
 22194                        .WithMany()
 22195                        .HasForeignKey("ClassId")
 22196                        .OnDelete(DeleteBehavior.Cascade)
 22197                        .IsRequired()
 22198                        .HasConstraintName("fk_classes__students_classes_class_id");
 22199
 22200                    b.HasOne("Syki.Back.Features.Academic.CreateStudent.SykiStudent", null)
 22201                        .WithMany()
 22202                        .HasForeignKey("SykiStudentId")
 22203                        .OnDelete(DeleteBehavior.Cascade)
 22204                        .IsRequired()
 22205                        .HasConstraintName("fk_classes__students_students_syki_student_id");
 42206                });
 2207
 22208            modelBuilder.Entity("Syki.Back.Features.Teacher.AddClassActivityNote.StudentClassNote", b =>
 22209                {
 22210                    b.HasOne("Syki.Back.Features.Academic.CreateClass.Class", null)
 22211                        .WithMany("Notes")
 22212                        .HasForeignKey("ClassId")
 22213                        .OnDelete(DeleteBehavior.Cascade)
 22214                        .IsRequired()
 22215                        .HasConstraintName("fk_student_class_notes_classes_class_id");
 22216
 22217                    b.HasOne("Syki.Back.Features.Academic.CreateStudent.SykiStudent", null)
 22218                        .WithMany()
 22219                        .HasForeignKey("StudentId")
 22220                        .OnDelete(DeleteBehavior.Cascade)
 22221                        .IsRequired()
 22222                        .HasConstraintName("fk_student_class_notes_students_student_id");
 42223                });
 2224
 22225            modelBuilder.Entity("Syki.Back.Features.Teacher.CreateClassActivity.ClassActivity", b =>
 22226                {
 22227                    b.HasOne("Syki.Back.Features.Academic.CreateClass.Class", null)
 22228                        .WithMany("Activities")
 22229                        .HasForeignKey("ClassId")
 22230                        .OnDelete(DeleteBehavior.Cascade)
 22231                        .IsRequired()
 22232                        .HasConstraintName("fk_class_activities_classes_class_id");
 42233                });
 2234
 22235            modelBuilder.Entity("Syki.Back.Features.Teacher.CreateLessonAttendance.ClassLessonAttendance", b =>
 22236                {
 22237                    b.HasOne("Syki.Back.Features.Academic.CreateClass.Class", null)
 22238                        .WithMany()
 22239                        .HasForeignKey("ClassId")
 22240                        .OnDelete(DeleteBehavior.Cascade)
 22241                        .IsRequired()
 22242                        .HasConstraintName("fk_class_lesson_attendances_classes_class_id");
 22243
 22244                    b.HasOne("Syki.Back.Features.Academic.CreateClass.ClassLesson", null)
 22245                        .WithMany("Attendances")
 22246                        .HasForeignKey("LessonId")
 22247                        .OnDelete(DeleteBehavior.Cascade)
 22248                        .IsRequired()
 22249                        .HasConstraintName("fk_class_lesson_attendances_class_lessons_lesson_id");
 22250
 22251                    b.HasOne("Syki.Back.Features.Academic.CreateStudent.SykiStudent", null)
 22252                        .WithMany()
 22253                        .HasForeignKey("StudentId")
 22254                        .OnDelete(DeleteBehavior.Cascade)
 22255                        .IsRequired()
 22256                        .HasConstraintName("fk_class_lesson_attendances_students_student_id");
 42257                });
 2258
 22259            modelBuilder.Entity("Syki.Back.Metrics.RequestMetrics", b =>
 22260                {
 22261                    b.OwnsMany("Syki.Back.Metrics.RequestData", "Requests", b1 =>
 22262                        {
 22263                            b1.Property<Guid>("RequestMetricsId")
 22264                                .HasColumnType("uuid");
 22265
 22266                            b1.Property<int>("__synthesizedOrdinal")
 22267                                .ValueGeneratedOnAdd()
 22268                                .HasColumnType("integer");
 22269
 22270                            b1.Property<string>("Endpoint")
 22271                                .IsRequired()
 22272                                .HasColumnType("text");
 22273
 22274                            b1.Property<string>("Values")
 22275                                .IsRequired()
 22276                                .HasColumnType("text");
 22277
 22278                            b1.HasKey("RequestMetricsId", "__synthesizedOrdinal")
 22279                                .HasName("pk_request_metrics");
 22280
 22281                            b1.ToTable("request_metrics", "syki");
 22282
 22283                            b1.ToJson("requests");
 22284
 22285                            b1.WithOwner()
 22286                                .HasForeignKey("RequestMetricsId")
 22287                                .HasConstraintName("fk_request_metrics_request_metrics_request_metrics_id");
 42288                        });
 22289
 22290                    b.OwnsOne("Syki.Back.Metrics.ResumeData", "Resume", b1 =>
 22291                        {
 22292                            b1.Property<Guid>("RequestMetricsId")
 22293                                .HasColumnType("uuid");
 22294
 22295                            b1.Property<int>("Get")
 22296                                .HasColumnType("integer");
 22297
 22298                            b1.Property<int>("Post")
 22299                                .HasColumnType("integer");
 22300
 22301                            b1.Property<int>("Put")
 22302                                .HasColumnType("integer");
 22303
 22304                            b1.Property<int>("Total")
 22305                                .HasColumnType("integer");
 22306
 22307                            b1.HasKey("RequestMetricsId")
 22308                                .HasName("pk_request_metrics");
 22309
 22310                            b1.ToTable("request_metrics", "syki");
 22311
 22312                            b1.ToJson("resume");
 22313
 22314                            b1.WithOwner()
 22315                                .HasForeignKey("RequestMetricsId")
 22316                                .HasConstraintName("fk_request_metrics_request_metrics_request_metrics_id");
 42317                        });
 22318
 22319                    b.Navigation("Requests");
 22320
 22321                    b.Navigation("Resume")
 22322                        .IsRequired();
 42323                });
 2324
 22325            modelBuilder.Entity("Syki.Back.Features.Academic.CallWebhooks.WebhookCall", b =>
 22326                {
 22327                    b.Navigation("Attempts");
 42328                });
 2329
 22330            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.Class", b =>
 22331                {
 22332                    b.Navigation("Activities");
 22333
 22334                    b.Navigation("Lessons");
 22335
 22336                    b.Navigation("Notes");
 22337
 22338                    b.Navigation("Schedules");
 42339                });
 2340
 22341            modelBuilder.Entity("Syki.Back.Features.Academic.CreateClass.ClassLesson", b =>
 22342                {
 22343                    b.Navigation("Attendances");
 42344                });
 2345
 22346            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourse.Course", b =>
 22347                {
 22348                    b.Navigation("CourseCurriculums");
 22349
 22350                    b.Navigation("Links");
 42351                });
 2352
 22353            modelBuilder.Entity("Syki.Back.Features.Academic.CreateCourseCurriculum.CourseCurriculum", b =>
 22354                {
 22355                    b.Navigation("Links");
 42356                });
 2357
 22358            modelBuilder.Entity("Syki.Back.Features.Academic.CreateDiscipline.Discipline", b =>
 22359                {
 22360                    b.Navigation("Links");
 42361                });
 2362
 22363            modelBuilder.Entity("Syki.Back.Features.Academic.CreateNotification.Notification", b =>
 22364                {
 22365                    b.Navigation("Users");
 42366                });
 2367
 22368            modelBuilder.Entity("Syki.Back.Features.Academic.CreateWebhookSubscription.WebhookSubscription", b =>
 22369                {
 22370                    b.Navigation("Authentication")
 22371                        .IsRequired();
 22372
 22373                    b.Navigation("Calls");
 42374                });
 2375
 22376            modelBuilder.Entity("Syki.Back.Features.Cross.CreateInstitution.Institution", b =>
 22377                {
 22378                    b.Navigation("AcademicPeriods");
 22379
 22380                    b.Navigation("Campi");
 22381
 22382                    b.Navigation("Classrooms");
 22383
 22384                    b.Navigation("Configs")
 22385                        .IsRequired();
 22386
 22387                    b.Navigation("CourseCurriculums");
 22388
 22389                    b.Navigation("CourseOfferings");
 22390
 22391                    b.Navigation("Courses");
 22392
 22393                    b.Navigation("Disciplines");
 22394
 22395                    b.Navigation("Notifications");
 22396
 22397                    b.Navigation("Students");
 22398
 22399                    b.Navigation("Teachers");
 22400
 22401                    b.Navigation("Users");
 22402
 22403                    b.Navigation("WebhookCalls");
 22404
 22405                    b.Navigation("Webhooks");
 42406                });
 2407
 22408            modelBuilder.Entity("Syki.Back.Features.Teacher.CreateClassActivity.ClassActivity", b =>
 22409                {
 22410                    b.Navigation("Works");
 42411                });
 2412#pragma warning restore 612, 618
 22413        }
 2414    }
 2415}