From 403b34a0984ace44ee5b2acffc7bc39ec3db410e Mon Sep 17 00:00:00 2001 From: SpecialX <47072643+wangxiner55@users.noreply.github.com> Date: Fri, 12 Sep 2025 14:32:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AD=A6=E6=A0=A1=E8=A1=A8?= =?UTF-8?q?=E5=92=8C=E5=B9=B4=E7=BA=A7=E8=A1=A8=EF=BC=8C=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E7=8F=AD=E7=BA=A7=E8=A1=A8=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Entities/Contracts/Class.cs | 27 +++++++++++---------------- Entities/Contracts/Grade.cs | 34 ++++++++++++++++++++++++++++++++++ Entities/Contracts/School.cs | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 80 insertions(+), 16 deletions(-) create mode 100644 Entities/Contracts/Grade.cs create mode 100644 Entities/Contracts/School.cs diff --git a/Entities/Contracts/Class.cs b/Entities/Contracts/Class.cs index 45edfee..68d1269 100644 --- a/Entities/Contracts/Class.cs +++ b/Entities/Contracts/Class.cs @@ -2,9 +2,6 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace Entities.Contracts { @@ -12,20 +9,19 @@ namespace Entities.Contracts public class Class { [Key] - [Column("id")] - public Guid Id { get; set; } + [Column("class_id")] + public int ClassId { get; set; } - [Column("grade")] - public byte Grade { get; set; } + [Column("grade_id")] + public int GradeId { get; set; } + public Grade Grade { get; set; } - [Column("class")] - public byte Number { get; set; } - - [Column("description")] - public string Description { get; set; } + [Column("class_name")] + [MaxLength(30)] + public string ClassName { get; set; } [Column("head_teacher_id")] - public Guid? HeadTeacherId { get; set; } + public int? HeadTeacherId { get; set; } public User HeadTeacher { get; set; } [Column("created_at")] @@ -44,12 +40,11 @@ namespace Entities.Contracts public Class() { - Id = Guid.NewGuid(); - Grade = 0; - Number = 0; ClassStudents = new HashSet(); ClassTeachers = new HashSet(); AssignmentClasses = new HashSet(); + CreatedAt = DateTime.Now; + UpdatedAt = DateTime.Now; } } } diff --git a/Entities/Contracts/Grade.cs b/Entities/Contracts/Grade.cs new file mode 100644 index 0000000..a98be1e --- /dev/null +++ b/Entities/Contracts/Grade.cs @@ -0,0 +1,34 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace Entities.Contracts +{ + [Table("grades")] + public class Grade + { + [Key] + [Column("grade_id")] + public int GradeId { get; set; } + + [Column("school_id")] + public int SchoolId { get; set; } + public School School { get; set; } + + [Column("grade_name")] + [MaxLength(20)] + public string GradeName { get; set; } + + [Column("grade_level")] + public int GradeLevel { get; set; } + + // Navigation Properties + public ICollection Classes { get; set; } + + public Grade() + { + Classes = new HashSet(); + } + } +} diff --git a/Entities/Contracts/School.cs b/Entities/Contracts/School.cs new file mode 100644 index 0000000..d6358f8 --- /dev/null +++ b/Entities/Contracts/School.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace Entities.Contracts +{ + [Table("schools")] + public class School + { + [Key] + [Column("school_id")] + public int SchoolId { get; set; } + + [Column("school_name")] + [MaxLength(50)] + public string SchoolName { get; set; } + + [Column("address")] + [MaxLength(100)] + public string Address { get; set; } + + [Column("create_time")] + public DateTime CreateTime { get; set; } + + // Navigation Properties + public ICollection Grades { get; set; } + + public School() + { + Grades = new HashSet(); + CreateTime = DateTime.Now; + } + } +}