This commit is contained in:
maruizhi
2026-09-24 14:10:22 +08:00
parent a9d73c8578
commit a0bf614c77
27 changed files with 245 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
from util.database import Base
from .class_model import Class
from .code_value_model import CodeValue
from .company_model import Company
from .course_model import Course
from .employee_model import Employee
from .employment_info_model import EmploymentInfo
from .grade_model import Grade
from .interview_model import Interview
from .relation_model import Relation
from .student_model import Student
__all__ = [
"Base",
"Class",
"CodeValue",
"Company",
"Course",
"Employee",
"EmploymentInfo",
"Grade",
"Interview",
"Relation",
"Student",
]
+19
View File
@@ -0,0 +1,19 @@
from sqlalchemy import Integer, Column, DateTime, String
from util.database import Base
class Class(Base):
"""对应 Excel Sheet:班级表。"""
__tablename__ = "wl_class"
id = Column(Integer, primary_key=True, autoincrement=True)
class_number = Column(String(50))
name = Column(String(100))
start_date = Column(DateTime)
planned_end_date = Column(DateTime)
actual_end_date = Column(DateTime)
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+18
View File
@@ -0,0 +1,18 @@
from sqlalchemy import Integer, Boolean, Column, DateTime, String
from util.database import Base
class CodeValue(Base):
"""对应 Excel Sheet:码值表。"""
__tablename__ = "wl_code_value"
id = Column(Integer, primary_key=True, autoincrement=True)
code = Column(String(50))
meaning = Column(String(200))
type = Column(String(100))
is_enabled = Column(Boolean)
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+20
View File
@@ -0,0 +1,20 @@
from sqlalchemy import Integer, Column, DateTime, Numeric, String
from util.database import Base
class Company(Base):
"""对应 Excel Sheet:企业信息表。"""
__tablename__ = "wl_company"
id = Column(Integer, primary_key=True, autoincrement=True)
company_number = Column(String(50))
name = Column(String(200))
industry = Column(String(100))
employee_scale = Column(String(50))
main_business = Column(String(1000))
registered_capital = Column(Numeric(16, 2))
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+17
View File
@@ -0,0 +1,17 @@
from sqlalchemy import Integer, Column, DateTime, Numeric, String
from util.database import Base
class Course(Base):
"""对应 Excel Sheet:课程表。"""
__tablename__ = "wl_course"
id = Column(Integer, primary_key=True, autoincrement=True)
course_number = Column(String(50))
name = Column(String(100))
planned_training_hours = Column(Numeric(8, 2))
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+23
View File
@@ -0,0 +1,23 @@
from sqlalchemy import Integer, Column, Date, DateTime, Numeric, String
from util.database import Base
class Employee(Base):
"""对应 Excel Sheet:员工表。"""
__tablename__ = "wl_employee"
id = Column(Integer, primary_key=True, autoincrement=True)
employee_number = Column(String(50))
name = Column(String(100))
gender = Column(String(20))
birth_date = Column(Date)
id_card_number = Column(String(18))
hometown = Column(String(100))
salary = Column(Numeric(12, 2))
position_type = Column(String(50))
position_level = Column(String(50))
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+19
View File
@@ -0,0 +1,19 @@
from sqlalchemy import Integer, Column, DateTime, Numeric, String
from util.database import Base
class EmploymentInfo(Base):
"""对应 Excel Sheet:就业信息表。"""
__tablename__ = "wl_employment_info"
id = Column(Integer, primary_key=True, autoincrement=True)
student_id = Column(Integer)
employment_salary = Column(Numeric(12, 2))
company_number = Column(String(50))
resume_opened_at = Column(DateTime)
offer_received_at = Column(DateTime)
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+18
View File
@@ -0,0 +1,18 @@
from sqlalchemy import Integer, Column, DateTime, Integer, Numeric, String
from util.database import Base
class Grade(Base):
"""对应 Excel Sheet:成绩表。"""
__tablename__ = "wl_grade"
id = Column(Integer, primary_key=True, autoincrement=True)
student_number = Column(String(50))
course_number = Column(String(50))
exam_sequence = Column(Integer)
score = Column(Numeric(5, 2))
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+20
View File
@@ -0,0 +1,20 @@
from sqlalchemy import Integer, Boolean, Column, DateTime, Integer, String
from util.database import Base
class Interview(Base):
"""对应 Excel Sheet:面试信息表。"""
__tablename__ = "wl_interview"
id = Column(Integer, primary_key=True, autoincrement=True)
interview_at = Column(DateTime)
student_id = Column(Integer)
room = Column(String(100))
sequence = Column(Integer)
company_id = Column(Integer)
result = Column(Boolean)
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+19
View File
@@ -0,0 +1,19 @@
from datetime import datetime
from sqlalchemy import Integer, Column, DateTime, String
from util.database import Base
class Relation(Base):
"""对应 Excel Sheet:关联关系表。"""
__tablename__ = "wl_relation"
id = Column(Integer, primary_key=True, autoincrement=True)
source_id = Column(String(50))
destination_id = Column(Integer)
relation_type = Column(String(50))
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)
+31
View File
@@ -0,0 +1,31 @@
from sqlalchemy import Integer, Column, Date, DateTime, Numeric, String
from util.database import Base
class Student(Base):
"""对应 Excel Sheet:学生表。"""
__tablename__ = "wl_student"
id = Column(Integer, primary_key=True, autoincrement=True)
student_number = Column(String(50), nullable=False)
name = Column(String(100))
gender = Column(String(20))
birth_date = Column(Date)
id_card_number = Column(String(18))
phone_number = Column(String(30))
hometown = Column(String(100))
graduate_school = Column(String(200))
education = Column(String(50))
hobbies = Column(String(500))
trial_date = Column(Date)
expected_salary = Column(Numeric(12, 2))
consultant_id = Column(Integer)
class_id = Column(Integer)
payment_method = Column(String(20))
emergency_contact = Column(String(100))
remark = Column(String(1000))
created_at = Column(DateTime)
updated_at = Column(DateTime)
is_deleted = Column(default=False, nullable=False)