source: iknow-api/Models/User.cs@ 8ee90bd

Last change on this file since 8ee90bd was c42181c, checked in by Stefan-Saveski <stefansaveski19@…>, 7 days ago

Refactor payment model to remove redundant user_id, addressing BCNF violation in Phase 5 normalization

  • Property mode set to 100644
File size: 1.1 KB
Line 
1namespace iknow_api.Models
2{
3 public enum UserRole
4 {
5 Admin,
6 Professor,
7 Student
8 }
9
10 // Attributes follow the Users entity in the ER model exactly.
11 public class User
12 {
13 public int Id { get; set; }
14 public string? Name { get; set; }
15 public string? EMBG { get; set; }
16 public string? Surname { get; set; }
17 public string? Index { get; set; }
18 public string? Email { get; set; }
19 public string? PasswordHash { get; set; }
20 public DateTime? Bday { get; set; }
21 public DateTime CreatedAt { get; set; }
22 public UserRole Role { get; set; }
23 public Quota? Quota { get; set; }
24 public int? EnrollmentYear { get; set; }
25
26 public HighSchool? HighSchool { get; set; }
27 public ContactInfo? ContactInfo { get; set; }
28 public ICollection<UserDocuments>? Documents { get; set; }
29
30 // Users 1 --submits-- N EnrolledSemesters
31 public ICollection<EnrolledSemesters>? Enrolments { get; set; }
32
33 // Users 1 --teaches-- N SemestersSubjects
34 public ICollection<SemesterSubject>? TeachingSubjects { get; set; }
35 }
36}
Note: See TracBrowser for help on using the repository browser.