source: iknow-api/Migrations/20251209133847_InitalCreate.Designer.cs@ 2d64b2e

Last change on this file since 2d64b2e was 2d64b2e, checked in by imbrsk <boris696boris@…>, 10 months ago

Refactor model properties for consistency and clarity

  • Property mode set to 100644
File size: 23.1 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("20251209133847_InitalCreate")]
16 partial class InitalCreate
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<string>("Address")
37 .HasColumnType("text");
38
39 b.Property<string>("City")
40 .HasColumnType("text");
41
42 b.Property<string>("MicrosoftEmail")
43 .HasColumnType("text");
44
45 b.Property<string>("Municipality")
46 .HasColumnType("text");
47
48 b.Property<string>("PhoneNumber")
49 .HasColumnType("text");
50
51 b.Property<int>("UserId")
52 .HasColumnType("integer");
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<string>("StudyStatus")
143 .HasColumnType("text");
144
145 b.Property<string>("StudyType")
146 .HasColumnType("text");
147
148 b.Property<int>("UserId")
149 .HasColumnType("integer");
150
151 b.Property<int>("enrollmentYear")
152 .HasColumnType("integer");
153
154 b.Property<int>("quota")
155 .HasColumnType("integer");
156
157 b.HasKey("Id");
158
159 b.HasIndex("MajorId");
160
161 b.HasIndex("UserId")
162 .IsUnique();
163
164 b.ToTable("EnrollmentInfo");
165 });
166
167 modelBuilder.Entity("iknow_api.Models.HighSchool", b =>
168 {
169 b.Property<int>("Id")
170 .ValueGeneratedOnAdd()
171 .HasColumnType("integer");
172
173 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
174
175 b.Property<float>("GPA")
176 .HasColumnType("real");
177
178 b.Property<int>("HighSchoolType")
179 .HasColumnType("integer");
180
181 b.Property<string>("StudyLanguage")
182 .HasColumnType("text");
183
184 b.Property<int>("UserId")
185 .HasColumnType("integer");
186
187 b.HasKey("Id");
188
189 b.HasIndex("UserId")
190 .IsUnique();
191
192 b.ToTable("HighSchool");
193 });
194
195 modelBuilder.Entity("iknow_api.Models.Major", b =>
196 {
197 b.Property<int>("Id")
198 .ValueGeneratedOnAdd()
199 .HasColumnType("integer");
200
201 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
202
203 b.Property<string>("Name")
204 .HasColumnType("text");
205
206 b.HasKey("Id");
207
208 b.ToTable("Majors");
209
210 b.HasData(
211 new
212 {
213 Id = 1,
214 Name = "PIT"
215 },
216 new
217 {
218 Id = 2,
219 Name = "SIIS"
220 },
221 new
222 {
223 Id = 3,
224 Name = "SEIS"
225 },
226 new
227 {
228 Id = 4,
229 Name = "KN"
230 });
231 });
232
233 modelBuilder.Entity("iknow_api.Models.MajorSubjects", b =>
234 {
235 b.Property<int>("MajorId")
236 .HasColumnType("integer");
237
238 b.Property<int>("SubjectId")
239 .HasColumnType("integer");
240
241 b.Property<int>("Accreditation")
242 .HasColumnType("integer");
243
244 b.Property<int>("MandatorySemester")
245 .HasColumnType("integer");
246
247 b.HasKey("MajorId", "SubjectId");
248
249 b.HasIndex("SubjectId");
250
251 b.ToTable("MajorSubjects");
252 });
253
254 modelBuilder.Entity("iknow_api.Models.PassedSubject", b =>
255 {
256 b.Property<int>("Id")
257 .ValueGeneratedOnAdd()
258 .HasColumnType("integer");
259
260 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
261
262 b.Property<DateTime>("DatePassed")
263 .HasColumnType("timestamp with time zone");
264
265 b.Property<int>("Grade")
266 .HasColumnType("integer");
267
268 b.Property<int>("SemesterSubjectId")
269 .HasColumnType("integer");
270
271 b.HasKey("Id");
272
273 b.HasIndex("SemesterSubjectId")
274 .IsUnique();
275
276 b.ToTable("PassedSubjects");
277 });
278
279 modelBuilder.Entity("iknow_api.Models.Payment", b =>
280 {
281 b.Property<int>("UserId")
282 .HasColumnType("integer");
283
284 b.Property<int>("EnrollmentInfoId")
285 .HasColumnType("integer");
286
287 b.Property<int>("Id")
288 .HasColumnType("integer");
289
290 b.HasKey("UserId", "EnrollmentInfoId");
291
292 b.HasIndex("EnrollmentInfoId");
293
294 b.ToTable("Payment");
295 });
296
297 modelBuilder.Entity("iknow_api.Models.RefreshToken", b =>
298 {
299 b.Property<int>("Id")
300 .ValueGeneratedOnAdd()
301 .HasColumnType("integer");
302
303 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
304
305 b.Property<DateTime>("ExpiresAt")
306 .HasColumnType("timestamp with time zone");
307
308 b.Property<bool>("IsValid")
309 .HasColumnType("boolean");
310
311 b.Property<string>("Token")
312 .HasColumnType("text");
313
314 b.Property<int>("UserId")
315 .HasColumnType("integer");
316
317 b.HasKey("Id");
318
319 b.HasIndex("UserId");
320
321 b.ToTable("RefreshToken");
322 });
323
324 modelBuilder.Entity("iknow_api.Models.SemesterSubject", b =>
325 {
326 b.Property<int>("Id")
327 .ValueGeneratedOnAdd()
328 .HasColumnType("integer");
329
330 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
331
332 b.Property<int>("EnrolledSemesterId")
333 .HasColumnType("integer");
334
335 b.Property<int>("ProfessorId")
336 .HasColumnType("integer");
337
338 b.Property<int>("SubjectId")
339 .HasColumnType("integer");
340
341 b.Property<int>("UserId")
342 .HasColumnType("integer");
343
344 b.HasKey("Id");
345
346 b.HasIndex("EnrolledSemesterId");
347
348 b.HasIndex("ProfessorId");
349
350 b.HasIndex("SubjectId");
351
352 b.HasIndex("UserId");
353
354 b.ToTable("SemesterSubject");
355 });
356
357 modelBuilder.Entity("iknow_api.Models.Subject", b =>
358 {
359 b.Property<int>("Id")
360 .ValueGeneratedOnAdd()
361 .HasColumnType("integer");
362
363 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
364
365 b.Property<int?>("AwardedCredits")
366 .HasColumnType("integer");
367
368 b.Property<string>("Code")
369 .HasColumnType("text");
370
371 b.Property<int?>("DependencyCredit")
372 .HasColumnType("integer");
373
374 b.Property<string>("Name")
375 .HasColumnType("text");
376
377 b.HasKey("Id");
378
379 b.ToTable("Subjects");
380 });
381
382 modelBuilder.Entity("iknow_api.Models.User", b =>
383 {
384 b.Property<int>("Id")
385 .ValueGeneratedOnAdd()
386 .HasColumnType("integer");
387
388 NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
389
390 b.Property<DateTime>("Bday")
391 .HasColumnType("timestamp with time zone");
392
393 b.Property<string>("Citizenship")
394 .HasColumnType("text");
395
396 b.Property<DateTime>("CreatedAt")
397 .HasColumnType("timestamp with time zone");
398
399 b.Property<string>("EMBG")
400 .HasColumnType("text");
401
402 b.Property<string>("Email")
403 .HasColumnType("text");
404
405 b.Property<string>("Gender")
406 .HasColumnType("text");
407
408 b.Property<string>("Index")
409 .HasColumnType("text");
410
411 b.Property<string>("MiddleName")
412 .HasColumnType("text");
413
414 b.Property<string>("Name")
415 .HasColumnType("text");
416
417 b.Property<string>("Nationality")
418 .HasColumnType("text");
419
420 b.Property<string>("PasswordHash")
421 .HasColumnType("text");
422
423 b.Property<int>("Role")
424 .HasColumnType("integer");
425
426 b.Property<string>("Surname")
427 .HasColumnType("text");
428
429 b.HasKey("Id");
430
431 b.ToTable("User");
432 });
433
434 modelBuilder.Entity("iknow_api.Models.UserDocuments", b =>
435 {
436 b.Property<int>("UserId")
437 .HasColumnType("integer");
438
439 b.Property<int>("DocumentId")
440 .HasColumnType("integer");
441
442 b.HasKey("UserId", "DocumentId");
443
444 b.HasIndex("DocumentId");
445
446 b.ToTable("UserDocuments");
447 });
448
449 modelBuilder.Entity("iknow_api.Models.ContactInfo", b =>
450 {
451 b.HasOne("iknow_api.Models.User", "User")
452 .WithOne("ContactInfo")
453 .HasForeignKey("iknow_api.Models.ContactInfo", "UserId")
454 .OnDelete(DeleteBehavior.Cascade)
455 .IsRequired();
456
457 b.Navigation("User");
458 });
459
460 modelBuilder.Entity("iknow_api.Models.DependencySubject", b =>
461 {
462 b.HasOne("iknow_api.Models.Subject", "Dependency")
463 .WithMany("Dependents")
464 .HasForeignKey("DependencyId")
465 .OnDelete(DeleteBehavior.Restrict)
466 .IsRequired();
467
468 b.HasOne("iknow_api.Models.Subject", "Subject")
469 .WithMany("Dependencies")
470 .HasForeignKey("SubjectId")
471 .OnDelete(DeleteBehavior.Restrict)
472 .IsRequired();
473
474 b.Navigation("Dependency");
475
476 b.Navigation("Subject");
477 });
478
479 modelBuilder.Entity("iknow_api.Models.EnrolledSemesters", b =>
480 {
481 b.HasOne("iknow_api.Models.Major", "Major")
482 .WithMany()
483 .HasForeignKey("MajorId")
484 .OnDelete(DeleteBehavior.Cascade)
485 .IsRequired();
486
487 b.HasOne("iknow_api.Models.User", "User")
488 .WithMany()
489 .HasForeignKey("UserId")
490 .OnDelete(DeleteBehavior.Cascade)
491 .IsRequired();
492
493 b.Navigation("Major");
494
495 b.Navigation("User");
496 });
497
498 modelBuilder.Entity("iknow_api.Models.EnrollmentInfo", b =>
499 {
500 b.HasOne("iknow_api.Models.Major", "Major")
501 .WithMany()
502 .HasForeignKey("MajorId")
503 .OnDelete(DeleteBehavior.Cascade)
504 .IsRequired();
505
506 b.HasOne("iknow_api.Models.User", "User")
507 .WithOne("EnrollmentInfo")
508 .HasForeignKey("iknow_api.Models.EnrollmentInfo", "UserId")
509 .OnDelete(DeleteBehavior.Cascade)
510 .IsRequired();
511
512 b.Navigation("Major");
513
514 b.Navigation("User");
515 });
516
517 modelBuilder.Entity("iknow_api.Models.HighSchool", b =>
518 {
519 b.HasOne("iknow_api.Models.User", "User")
520 .WithOne("HighSchool")
521 .HasForeignKey("iknow_api.Models.HighSchool", "UserId")
522 .OnDelete(DeleteBehavior.Cascade)
523 .IsRequired();
524
525 b.Navigation("User");
526 });
527
528 modelBuilder.Entity("iknow_api.Models.MajorSubjects", b =>
529 {
530 b.HasOne("iknow_api.Models.Major", "Majors")
531 .WithMany("Subjects")
532 .HasForeignKey("MajorId")
533 .OnDelete(DeleteBehavior.Cascade)
534 .IsRequired();
535
536 b.HasOne("iknow_api.Models.Subject", "Subjects")
537 .WithMany("Majors")
538 .HasForeignKey("SubjectId")
539 .OnDelete(DeleteBehavior.Cascade)
540 .IsRequired();
541
542 b.Navigation("Majors");
543
544 b.Navigation("Subjects");
545 });
546
547 modelBuilder.Entity("iknow_api.Models.PassedSubject", b =>
548 {
549 b.HasOne("iknow_api.Models.SemesterSubject", "SemesterSubject")
550 .WithOne("PassedSubject")
551 .HasForeignKey("iknow_api.Models.PassedSubject", "SemesterSubjectId")
552 .OnDelete(DeleteBehavior.Cascade)
553 .IsRequired();
554
555 b.Navigation("SemesterSubject");
556 });
557
558 modelBuilder.Entity("iknow_api.Models.Payment", b =>
559 {
560 b.HasOne("iknow_api.Models.EnrolledSemesters", "EnrolledSemesters")
561 .WithMany("Users")
562 .HasForeignKey("EnrollmentInfoId")
563 .OnDelete(DeleteBehavior.Cascade)
564 .IsRequired();
565
566 b.HasOne("iknow_api.Models.User", "User")
567 .WithMany("EnrolledSemesters")
568 .HasForeignKey("UserId")
569 .OnDelete(DeleteBehavior.Cascade)
570 .IsRequired();
571
572 b.Navigation("EnrolledSemesters");
573
574 b.Navigation("User");
575 });
576
577 modelBuilder.Entity("iknow_api.Models.RefreshToken", b =>
578 {
579 b.HasOne("iknow_api.Models.User", "User")
580 .WithMany()
581 .HasForeignKey("UserId")
582 .OnDelete(DeleteBehavior.Cascade)
583 .IsRequired();
584
585 b.Navigation("User");
586 });
587
588 modelBuilder.Entity("iknow_api.Models.SemesterSubject", b =>
589 {
590 b.HasOne("iknow_api.Models.EnrolledSemesters", "EnrolledSemester")
591 .WithMany("SemesterSubjects")
592 .HasForeignKey("EnrolledSemesterId")
593 .OnDelete(DeleteBehavior.Restrict)
594 .IsRequired();
595
596 b.HasOne("iknow_api.Models.User", "Professor")
597 .WithMany("TeachingSubjects")
598 .HasForeignKey("ProfessorId")
599 .OnDelete(DeleteBehavior.Restrict)
600 .IsRequired();
601
602 b.HasOne("iknow_api.Models.Subject", "Subject")
603 .WithMany("SemesterSubjects")
604 .HasForeignKey("SubjectId")
605 .OnDelete(DeleteBehavior.Restrict)
606 .IsRequired();
607
608 b.HasOne("iknow_api.Models.User", "User")
609 .WithMany("EnrolledSemesterUserSubjects")
610 .HasForeignKey("UserId")
611 .OnDelete(DeleteBehavior.Restrict)
612 .IsRequired();
613
614 b.Navigation("EnrolledSemester");
615
616 b.Navigation("Professor");
617
618 b.Navigation("Subject");
619
620 b.Navigation("User");
621 });
622
623 modelBuilder.Entity("iknow_api.Models.UserDocuments", b =>
624 {
625 b.HasOne("iknow_api.Models.Documents", "Documents")
626 .WithMany("User")
627 .HasForeignKey("DocumentId")
628 .OnDelete(DeleteBehavior.Cascade)
629 .IsRequired();
630
631 b.HasOne("iknow_api.Models.User", "User")
632 .WithMany("Documents")
633 .HasForeignKey("UserId")
634 .OnDelete(DeleteBehavior.Cascade)
635 .IsRequired();
636
637 b.Navigation("Documents");
638
639 b.Navigation("User");
640 });
641
642 modelBuilder.Entity("iknow_api.Models.Documents", b =>
643 {
644 b.Navigation("User");
645 });
646
647 modelBuilder.Entity("iknow_api.Models.EnrolledSemesters", b =>
648 {
649 b.Navigation("SemesterSubjects");
650
651 b.Navigation("Users");
652 });
653
654 modelBuilder.Entity("iknow_api.Models.Major", b =>
655 {
656 b.Navigation("Subjects");
657 });
658
659 modelBuilder.Entity("iknow_api.Models.SemesterSubject", b =>
660 {
661 b.Navigation("PassedSubject");
662 });
663
664 modelBuilder.Entity("iknow_api.Models.Subject", b =>
665 {
666 b.Navigation("Dependencies");
667
668 b.Navigation("Dependents");
669
670 b.Navigation("Majors");
671
672 b.Navigation("SemesterSubjects");
673 });
674
675 modelBuilder.Entity("iknow_api.Models.User", b =>
676 {
677 b.Navigation("ContactInfo");
678
679 b.Navigation("Documents");
680
681 b.Navigation("EnrolledSemesterUserSubjects");
682
683 b.Navigation("EnrolledSemesters");
684
685 b.Navigation("EnrollmentInfo");
686
687 b.Navigation("HighSchool");
688
689 b.Navigation("TeachingSubjects");
690 });
691#pragma warning restore 612, 618
692 }
693 }
694}
Note: See TracBrowser for help on using the repository browser.