source: iknow-api/Migrations/20251209115716_InitialCreate.Designer.cs@ bb656bc

Last change on this file since bb656bc was bb656bc, checked in by Stefan-Saveski <stefan@…>, 10 months ago

Added external DB service.

  • Property mode set to 100644
File size: 22.4 KB
Line 
1// <auto-generated />
2using System;
3using Microsoft.EntityFrameworkCore;
4using Microsoft.EntityFrameworkCore.Infrastructure;
5using Microsoft.EntityFrameworkCore.Migrations;
6using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
7using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
8using iknow_api.Data;
9
10#nullable disable
11
12namespace iknow_api.Migrations
13{
14 [DbContext(typeof(AppDbContext))]
15 [Migration("20251209115716_InitialCreate")]
16 partial class InitialCreate
17 {
18 /// <inheritdoc />
19 protected override void BuildTargetModel(ModelBuilder modelBuilder)
20 {
21#pragma warning disable 612, 618
22 modelBuilder
23 .HasAnnotation("ProductVersion", "9.0.10")
24 .HasAnnotation("Relational:MaxIdentifierLength", 63);
25
26 NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
27
28 modelBuilder.Entity("iknow_api.Models.ContactInfo", b =>
29 {
30 b.Property<int>("Id")
31 .ValueGeneratedOnAdd()
32 .HasColumnType("integer");
33
34 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
35
36 b.Property<int>("UserId")
37 .HasColumnType("integer");
38
39 b.Property<string>("address")
40 .HasColumnType("text");
41
42 b.Property<string>("city")
43 .HasColumnType("text");
44
45 b.Property<string>("microsoftEmail")
46 .HasColumnType("text");
47
48 b.Property<string>("municipality")
49 .HasColumnType("text");
50
51 b.Property<string>("phoneNumber")
52 .HasColumnType("text");
53
54 b.HasKey("Id");
55
56 b.HasIndex("UserId")
57 .IsUnique();
58
59 b.ToTable("ContactInfo");
60 });
61
62 modelBuilder.Entity("iknow_api.Models.DependencySubject", b =>
63 {
64 b.Property<int>("SubjectId")
65 .HasColumnType("integer");
66
67 b.Property<int>("DependencyId")
68 .HasColumnType("integer");
69
70 b.HasKey("SubjectId", "DependencyId");
71
72 b.HasIndex("DependencyId");
73
74 b.ToTable("DependencySubjects");
75 });
76
77 modelBuilder.Entity("iknow_api.Models.Documents", b =>
78 {
79 b.Property<int>("Id")
80 .ValueGeneratedOnAdd()
81 .HasColumnType("integer");
82
83 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
84
85 b.Property<string>("body")
86 .HasColumnType("text");
87
88 b.Property<int>("cost")
89 .HasColumnType("integer");
90
91 b.Property<string>("name")
92 .HasColumnType("text");
93
94 b.HasKey("Id");
95
96 b.ToTable("Documents");
97 });
98
99 modelBuilder.Entity("iknow_api.Models.EnrolledSemesters", b =>
100 {
101 b.Property<int>("Id")
102 .ValueGeneratedOnAdd()
103 .HasColumnType("integer");
104
105 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
106
107 b.Property<int>("MajorId")
108 .HasColumnType("integer");
109
110 b.Property<int>("QuotaType")
111 .HasColumnType("integer");
112
113 b.Property<int>("Type")
114 .HasColumnType("integer");
115
116 b.Property<int>("UserId")
117 .HasColumnType("integer");
118
119 b.Property<int>("Year")
120 .HasColumnType("integer");
121
122 b.HasKey("Id");
123
124 b.HasIndex("MajorId");
125
126 b.HasIndex("UserId");
127
128 b.ToTable("EnrolledSemesters");
129 });
130
131 modelBuilder.Entity("iknow_api.Models.EnrollmentInfo", b =>
132 {
133 b.Property<int>("Id")
134 .ValueGeneratedOnAdd()
135 .HasColumnType("integer");
136
137 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
138
139 b.Property<int>("MajorId")
140 .HasColumnType("integer");
141
142 b.Property<int>("UserId")
143 .HasColumnType("integer");
144
145 b.Property<int>("enrollmentYear")
146 .HasColumnType("integer");
147
148 b.Property<int>("quota")
149 .HasColumnType("integer");
150
151 b.HasKey("Id");
152
153 b.HasIndex("MajorId");
154
155 b.HasIndex("UserId")
156 .IsUnique();
157
158 b.ToTable("EnrollmentInfo");
159 });
160
161 modelBuilder.Entity("iknow_api.Models.HighSchool", b =>
162 {
163 b.Property<int>("Id")
164 .ValueGeneratedOnAdd()
165 .HasColumnType("integer");
166
167 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
168
169 b.Property<float>("GPA")
170 .HasColumnType("real");
171
172 b.Property<int>("UserId")
173 .HasColumnType("integer");
174
175 b.Property<int>("tip")
176 .HasColumnType("integer");
177
178 b.HasKey("Id");
179
180 b.HasIndex("UserId")
181 .IsUnique();
182
183 b.ToTable("HighSchool");
184 });
185
186 modelBuilder.Entity("iknow_api.Models.Major", b =>
187 {
188 b.Property<int>("Id")
189 .ValueGeneratedOnAdd()
190 .HasColumnType("integer");
191
192 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
193
194 b.Property<string>("Name")
195 .HasColumnType("text");
196
197 b.HasKey("Id");
198
199 b.ToTable("Majors");
200
201 b.HasData(
202 new
203 {
204 Id = 1,
205 Name = "PIT"
206 },
207 new
208 {
209 Id = 2,
210 Name = "SIIS"
211 },
212 new
213 {
214 Id = 3,
215 Name = "SEIS"
216 },
217 new
218 {
219 Id = 4,
220 Name = "KN"
221 });
222 });
223
224 modelBuilder.Entity("iknow_api.Models.MajorSubjects", b =>
225 {
226 b.Property<int>("MajorId")
227 .HasColumnType("integer");
228
229 b.Property<int>("SubjectId")
230 .HasColumnType("integer");
231
232 b.Property<int>("Akreditacija")
233 .HasColumnType("integer");
234
235 b.Property<int>("MandatorySemester")
236 .HasColumnType("integer");
237
238 b.HasKey("MajorId", "SubjectId");
239
240 b.HasIndex("SubjectId");
241
242 b.ToTable("MajorSubjects");
243 });
244
245 modelBuilder.Entity("iknow_api.Models.PassedSubject", b =>
246 {
247 b.Property<int>("Id")
248 .ValueGeneratedOnAdd()
249 .HasColumnType("integer");
250
251 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
252
253 b.Property<DateTime>("DatePassed")
254 .HasColumnType("timestamp with time zone");
255
256 b.Property<int>("Grade")
257 .HasColumnType("integer");
258
259 b.Property<int>("SemesterSubjectId")
260 .HasColumnType("integer");
261
262 b.HasKey("Id");
263
264 b.HasIndex("SemesterSubjectId")
265 .IsUnique();
266
267 b.ToTable("PassedSubjects");
268 });
269
270 modelBuilder.Entity("iknow_api.Models.Payment", b =>
271 {
272 b.Property<int>("UserId")
273 .HasColumnType("integer");
274
275 b.Property<int>("EnrollmentInfoId")
276 .HasColumnType("integer");
277
278 b.Property<int>("Id")
279 .HasColumnType("integer");
280
281 b.HasKey("UserId", "EnrollmentInfoId");
282
283 b.HasIndex("EnrollmentInfoId");
284
285 b.ToTable("Payment");
286 });
287
288 modelBuilder.Entity("iknow_api.Models.RefreshToken", b =>
289 {
290 b.Property<int>("Id")
291 .ValueGeneratedOnAdd()
292 .HasColumnType("integer");
293
294 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
295
296 b.Property<DateTime>("ExpiresAt")
297 .HasColumnType("timestamp with time zone");
298
299 b.Property<bool>("IsValid")
300 .HasColumnType("boolean");
301
302 b.Property<string>("Token")
303 .HasColumnType("text");
304
305 b.Property<int>("UserId")
306 .HasColumnType("integer");
307
308 b.HasKey("Id");
309
310 b.HasIndex("UserId");
311
312 b.ToTable("RefreshToken");
313 });
314
315 modelBuilder.Entity("iknow_api.Models.SemesterSubject", b =>
316 {
317 b.Property<int>("Id")
318 .ValueGeneratedOnAdd()
319 .HasColumnType("integer");
320
321 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
322
323 b.Property<int>("EnrolledSemesterId")
324 .HasColumnType("integer");
325
326 b.Property<int>("ProfessorId")
327 .HasColumnType("integer");
328
329 b.Property<int>("SubjectId")
330 .HasColumnType("integer");
331
332 b.Property<int>("UserId")
333 .HasColumnType("integer");
334
335 b.HasKey("Id");
336
337 b.HasIndex("EnrolledSemesterId");
338
339 b.HasIndex("ProfessorId");
340
341 b.HasIndex("SubjectId");
342
343 b.HasIndex("UserId");
344
345 b.ToTable("SemesterSubject");
346 });
347
348 modelBuilder.Entity("iknow_api.Models.Subject", b =>
349 {
350 b.Property<int>("Id")
351 .ValueGeneratedOnAdd()
352 .HasColumnType("integer");
353
354 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
355
356 b.Property<int?>("AwardedCredits")
357 .HasColumnType("integer");
358
359 b.Property<string>("Code")
360 .HasColumnType("text");
361
362 b.Property<int?>("DependencyCredit")
363 .HasColumnType("integer");
364
365 b.Property<string>("Name")
366 .HasColumnType("text");
367
368 b.HasKey("Id");
369
370 b.ToTable("Subjects");
371 });
372
373 modelBuilder.Entity("iknow_api.Models.User", b =>
374 {
375 b.Property<int>("Id")
376 .ValueGeneratedOnAdd()
377 .HasColumnType("integer");
378
379 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
380
381 b.Property<DateTime>("Bday")
382 .HasColumnType("timestamp with time zone");
383
384 b.Property<DateTime>("CreatedAt")
385 .HasColumnType("timestamp with time zone");
386
387 b.Property<string>("EMBG")
388 .HasColumnType("text");
389
390 b.Property<string>("Email")
391 .HasColumnType("text");
392
393 b.Property<string>("Index")
394 .HasColumnType("text");
395
396 b.Property<string>("Name")
397 .HasColumnType("text");
398
399 b.Property<string>("PasswordHash")
400 .HasColumnType("text");
401
402 b.Property<int>("Role")
403 .HasColumnType("integer");
404
405 b.Property<string>("Surname")
406 .HasColumnType("text");
407
408 b.HasKey("Id");
409
410 b.ToTable("User");
411 });
412
413 modelBuilder.Entity("iknow_api.Models.UserDocuments", b =>
414 {
415 b.Property<int>("UserId")
416 .HasColumnType("integer");
417
418 b.Property<int>("DocumentId")
419 .HasColumnType("integer");
420
421 b.HasKey("UserId", "DocumentId");
422
423 b.HasIndex("DocumentId");
424
425 b.ToTable("UserDocuments");
426 });
427
428 modelBuilder.Entity("iknow_api.Models.ContactInfo", b =>
429 {
430 b.HasOne("iknow_api.Models.User", "User")
431 .WithOne("ContactInfo")
432 .HasForeignKey("iknow_api.Models.ContactInfo", "UserId")
433 .OnDelete(DeleteBehavior.Cascade)
434 .IsRequired();
435
436 b.Navigation("User");
437 });
438
439 modelBuilder.Entity("iknow_api.Models.DependencySubject", b =>
440 {
441 b.HasOne("iknow_api.Models.Subject", "Dependency")
442 .WithMany("Dependents")
443 .HasForeignKey("DependencyId")
444 .OnDelete(DeleteBehavior.Restrict)
445 .IsRequired();
446
447 b.HasOne("iknow_api.Models.Subject", "Subject")
448 .WithMany("Dependencies")
449 .HasForeignKey("SubjectId")
450 .OnDelete(DeleteBehavior.Restrict)
451 .IsRequired();
452
453 b.Navigation("Dependency");
454
455 b.Navigation("Subject");
456 });
457
458 modelBuilder.Entity("iknow_api.Models.EnrolledSemesters", b =>
459 {
460 b.HasOne("iknow_api.Models.Major", "Major")
461 .WithMany()
462 .HasForeignKey("MajorId")
463 .OnDelete(DeleteBehavior.Cascade)
464 .IsRequired();
465
466 b.HasOne("iknow_api.Models.User", "User")
467 .WithMany()
468 .HasForeignKey("UserId")
469 .OnDelete(DeleteBehavior.Cascade)
470 .IsRequired();
471
472 b.Navigation("Major");
473
474 b.Navigation("User");
475 });
476
477 modelBuilder.Entity("iknow_api.Models.EnrollmentInfo", b =>
478 {
479 b.HasOne("iknow_api.Models.Major", "Major")
480 .WithMany()
481 .HasForeignKey("MajorId")
482 .OnDelete(DeleteBehavior.Cascade)
483 .IsRequired();
484
485 b.HasOne("iknow_api.Models.User", "User")
486 .WithOne("EnrollmentInfo")
487 .HasForeignKey("iknow_api.Models.EnrollmentInfo", "UserId")
488 .OnDelete(DeleteBehavior.Cascade)
489 .IsRequired();
490
491 b.Navigation("Major");
492
493 b.Navigation("User");
494 });
495
496 modelBuilder.Entity("iknow_api.Models.HighSchool", b =>
497 {
498 b.HasOne("iknow_api.Models.User", "User")
499 .WithOne("HighSchool")
500 .HasForeignKey("iknow_api.Models.HighSchool", "UserId")
501 .OnDelete(DeleteBehavior.Cascade)
502 .IsRequired();
503
504 b.Navigation("User");
505 });
506
507 modelBuilder.Entity("iknow_api.Models.MajorSubjects", b =>
508 {
509 b.HasOne("iknow_api.Models.Major", "Majors")
510 .WithMany("Subjects")
511 .HasForeignKey("MajorId")
512 .OnDelete(DeleteBehavior.Cascade)
513 .IsRequired();
514
515 b.HasOne("iknow_api.Models.Subject", "Subjects")
516 .WithMany("Majors")
517 .HasForeignKey("SubjectId")
518 .OnDelete(DeleteBehavior.Cascade)
519 .IsRequired();
520
521 b.Navigation("Majors");
522
523 b.Navigation("Subjects");
524 });
525
526 modelBuilder.Entity("iknow_api.Models.PassedSubject", b =>
527 {
528 b.HasOne("iknow_api.Models.SemesterSubject", "SemesterSubject")
529 .WithOne("PassedSubject")
530 .HasForeignKey("iknow_api.Models.PassedSubject", "SemesterSubjectId")
531 .OnDelete(DeleteBehavior.Cascade)
532 .IsRequired();
533
534 b.Navigation("SemesterSubject");
535 });
536
537 modelBuilder.Entity("iknow_api.Models.Payment", b =>
538 {
539 b.HasOne("iknow_api.Models.EnrolledSemesters", "EnrolledSemesters")
540 .WithMany("Users")
541 .HasForeignKey("EnrollmentInfoId")
542 .OnDelete(DeleteBehavior.Cascade)
543 .IsRequired();
544
545 b.HasOne("iknow_api.Models.User", "User")
546 .WithMany("EnrolledSemesters")
547 .HasForeignKey("UserId")
548 .OnDelete(DeleteBehavior.Cascade)
549 .IsRequired();
550
551 b.Navigation("EnrolledSemesters");
552
553 b.Navigation("User");
554 });
555
556 modelBuilder.Entity("iknow_api.Models.RefreshToken", b =>
557 {
558 b.HasOne("iknow_api.Models.User", "User")
559 .WithMany()
560 .HasForeignKey("UserId")
561 .OnDelete(DeleteBehavior.Cascade)
562 .IsRequired();
563
564 b.Navigation("User");
565 });
566
567 modelBuilder.Entity("iknow_api.Models.SemesterSubject", b =>
568 {
569 b.HasOne("iknow_api.Models.EnrolledSemesters", "EnrolledSemester")
570 .WithMany("SemesterSubjects")
571 .HasForeignKey("EnrolledSemesterId")
572 .OnDelete(DeleteBehavior.Restrict)
573 .IsRequired();
574
575 b.HasOne("iknow_api.Models.User", "Professor")
576 .WithMany("TeachingSubjects")
577 .HasForeignKey("ProfessorId")
578 .OnDelete(DeleteBehavior.Restrict)
579 .IsRequired();
580
581 b.HasOne("iknow_api.Models.Subject", "Subject")
582 .WithMany("SemesterSubjects")
583 .HasForeignKey("SubjectId")
584 .OnDelete(DeleteBehavior.Restrict)
585 .IsRequired();
586
587 b.HasOne("iknow_api.Models.User", "User")
588 .WithMany("EnrolledSemesterUserSubjects")
589 .HasForeignKey("UserId")
590 .OnDelete(DeleteBehavior.Restrict)
591 .IsRequired();
592
593 b.Navigation("EnrolledSemester");
594
595 b.Navigation("Professor");
596
597 b.Navigation("Subject");
598
599 b.Navigation("User");
600 });
601
602 modelBuilder.Entity("iknow_api.Models.UserDocuments", b =>
603 {
604 b.HasOne("iknow_api.Models.Documents", "Documents")
605 .WithMany("User")
606 .HasForeignKey("DocumentId")
607 .OnDelete(DeleteBehavior.Cascade)
608 .IsRequired();
609
610 b.HasOne("iknow_api.Models.User", "User")
611 .WithMany("Documents")
612 .HasForeignKey("UserId")
613 .OnDelete(DeleteBehavior.Cascade)
614 .IsRequired();
615
616 b.Navigation("Documents");
617
618 b.Navigation("User");
619 });
620
621 modelBuilder.Entity("iknow_api.Models.Documents", b =>
622 {
623 b.Navigation("User");
624 });
625
626 modelBuilder.Entity("iknow_api.Models.EnrolledSemesters", b =>
627 {
628 b.Navigation("SemesterSubjects");
629
630 b.Navigation("Users");
631 });
632
633 modelBuilder.Entity("iknow_api.Models.Major", b =>
634 {
635 b.Navigation("Subjects");
636 });
637
638 modelBuilder.Entity("iknow_api.Models.SemesterSubject", b =>
639 {
640 b.Navigation("PassedSubject");
641 });
642
643 modelBuilder.Entity("iknow_api.Models.Subject", b =>
644 {
645 b.Navigation("Dependencies");
646
647 b.Navigation("Dependents");
648
649 b.Navigation("Majors");
650
651 b.Navigation("SemesterSubjects");
652 });
653
654 modelBuilder.Entity("iknow_api.Models.User", b =>
655 {
656 b.Navigation("ContactInfo");
657
658 b.Navigation("Documents");
659
660 b.Navigation("EnrolledSemesterUserSubjects");
661
662 b.Navigation("EnrolledSemesters");
663
664 b.Navigation("EnrollmentInfo");
665
666 b.Navigation("HighSchool");
667
668 b.Navigation("TeachingSubjects");
669 });
670#pragma warning restore 612, 618
671 }
672 }
673}
Note: See TracBrowser for help on using the repository browser.