- Timestamp:
- 09/16/26 14:48:55 (7 days ago)
- Branches:
- master
- Children:
- 8ee90bd
- Parents:
- ea40556
- Location:
- iknow-api
- Files:
-
- 3 edited
-
Data/AppDbContext.cs (modified) (1 diff)
-
Models/Payment.cs (modified) (1 diff)
-
Models/User.cs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
iknow-api/Data/AppDbContext.cs
rea40556 rc42181c 290 290 e.HasKey(p => p.Id); 291 291 e.Property(p => p.Id).HasColumnName("id"); 292 e.Property(p => p.UserId).HasColumnName("user_id");293 292 e.Property(p => p.EnrollmentInfoId).HasColumnName("enrollment_id"); 294 293 e.Property(p => p.Amount).HasColumnName("amount"); 295 294 296 e.HasOne(p => p.User) 297 .WithMany(u => u.Payments) 298 .HasForeignKey(p => p.UserId) 299 .OnDelete(DeleteBehavior.Cascade); 300 295 // No user_id: the student comes from the enrolment. Removing it 296 // was the BCNF fix from Phase 5 (enrolled_id -> user_id). 301 297 e.HasOne(p => p.EnrolledSemesters) 302 298 .WithMany(es => es.Users) -
iknow-api/Models/Payment.cs
rea40556 rc42181c 1 using System.ComponentModel.DataAnnotations.Schema;2 3 1 namespace iknow_api.Models 4 2 { 3 /// <summary> 4 /// The student is reached through the enrolment: enrolled_id -> user_id. 5 /// A user_id here would be redundant and could contradict the enrolment, 6 /// which is the BCNF violation found during normalization (Phase 5). 7 /// </summary> 5 8 public class Payment 6 9 { 7 10 public int Id { get; set; } 8 11 9 public int UserId { get; set; }10 public User? User { get; set; }11 12 public int EnrollmentInfoId { get; set; } 12 13 public int Amount { get; set; } 13 14 public EnrolledSemesters? EnrolledSemesters { get; set; } 14 15 15 } 16 16 } -
iknow-api/Models/User.cs
rea40556 rc42181c 28 28 public ICollection<UserDocuments>? Documents { get; set; } 29 29 30 // Named for the relationship it carries: Users 1 --pays-- N Payment.31 public ICollection<Payment>? Payments { get; set; }32 33 30 // Users 1 --submits-- N EnrolledSemesters 34 31 public ICollection<EnrolledSemesters>? Enrolments { get; set; }
Note:
See TracChangeset
for help on using the changeset viewer.
