diff --git a/exercise.wwwapi/Models/Cohort.cs b/exercise.wwwapi/Models/Cohort.cs index 1b5e47b..f247db6 100644 --- a/exercise.wwwapi/Models/Cohort.cs +++ b/exercise.wwwapi/Models/Cohort.cs @@ -11,9 +11,17 @@ public class Cohort [Column("id")] public int Id { get; set; } - [Column("course_id")] - [ForeignKey(nameof(Course))] - public int CourseId { get; set; } - public Course Course { get; set; } - public ICollection Users { get; set; } = new List(); + [Column("cohort_number")] + public int CohortNumber { get; set; } + + [Column("cohort_name", TypeName = "varchar(50)")] + public string CohortName { get; set; } + + [Column("start_date", TypeName = "date")] + public DateTime StartDate { get; set; } + + [Column("end_date", TypeName = "date"))] + public DateTime EndDate { get; set; } + + public ICollection CohortCourse { get; set; } = new List(); } \ No newline at end of file diff --git a/exercise.wwwapi/Models/Cohort_Course.cs b/exercise.wwwapi/Models/Cohort_Course.cs new file mode 100644 index 0000000..dd90613 --- /dev/null +++ b/exercise.wwwapi/Models/Cohort_Course.cs @@ -0,0 +1,29 @@ +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; +using exercise.wwwapi.Models.UserInfo; + + +namespace exercise.wwwapi.Models +{ + [Table("cohort_course")] + public class CohortCourse + { + [Key] + [Column("id")] + public int Id { get; set; } + + [ForeignKey(nameof(Cohort))] + [Column("cohort_id")] + public int CohortId { get; set; } + + [ForeignKey(nameof(Course))] + [Column("course_id")] + public int CourseId { get; set; } + + public Cohort Cohort { get; set; } + public Course Course { get; set; } + + + + } +} diff --git a/exercise.wwwapi/Models/Course.cs b/exercise.wwwapi/Models/Course.cs index 4b1dfaf..72abce7 100644 --- a/exercise.wwwapi/Models/Course.cs +++ b/exercise.wwwapi/Models/Course.cs @@ -3,7 +3,7 @@ namespace exercise.wwwapi.Models; -[Table("course")] +[Table("courses")] public class Course { [Key] @@ -11,9 +11,8 @@ public class Course public int Id { get; set; } [Required] - [Column("course_name", TypeName = "varchar(100)")] - public string CourseName { get; set; } + [Column("name", TypeName = "varchar(100)")] + public string Name { get; set; } - public ICollection Modules { get; set; } = new List(); - public ICollection Cohorts { get; set; } = new List(); + public ICollection CohortCourses { get; set; } = new List(); } \ No newline at end of file diff --git a/exercise.wwwapi/Models/UserCC.cs b/exercise.wwwapi/Models/UserCC.cs new file mode 100644 index 0000000..a088063 --- /dev/null +++ b/exercise.wwwapi/Models/UserCC.cs @@ -0,0 +1,28 @@ +using exercise.wwwapi.Models.UserInfo; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace exercise.wwwapi.Models +{ + [Table("user_cc")] + public class UserCC + { + [Key] + [Column("id")] + public int Id { get; set; } + + [ForeignKey(nameof(Course))] + [Column("course_id")] + public int CourseId { get; set; } + + [ForeignKey(nameof(User))] + [Column("user_id")] + + public int UserId { get; set; } + + public Course Course { get; set; } + + public User User { get; set; } + + } +}