Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions internal/class/model/class.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package classmodel

import (
"github.com/EngineerProOrg/BE-K01/internal/room/model"
"github.com/EngineerProOrg/BE-K01/internal/course/model"
"github.com/EngineerProOrg/BE-K01/internal/professor/model"
)

type Class struct {
Class_id int `json:"class_id" gorm:"column:CLASS_ID;primaryKey"`
Class_name string `json:"class_name" gorm:"column:CLASS_NAME"`
Prof_id int `json:"prof_id" gorm:"column:PROF_ID"`
Prof professormodel.Professor `json:"prof" gorm:"preload:false"`
Course_id int `json:"course_id" gorm:"column:COURSE_ID"`
Course coursemodel.Course `json:"course" gorm:"preload:false"`
Room_id int `json:"room_id" gorm:"column:ROOM_ID"`
Room roommodel.Room `json:"room" gorm:"preload:false"`
}

func (Class) TableName() string {
return "CLASS"
}
16 changes: 16 additions & 0 deletions internal/course/model/course.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// create table COURSE (
// COURSE_ID int primary key,
// COURSE_NAME varchar(255)
// )


package coursemodel

type Course struct {
Course_id int `json:"course_id" gorm:"column:COURSE_ID;primaryKey"`
Course_name string `json:"course_name" gorm:"column:COURSE_NAME"`
}

func (Course) TableName() string {
return "COURSE"
}
27 changes: 27 additions & 0 deletions internal/enroll/model/enroll.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package enrollmodel

import (
"github.com/EngineerProOrg/BE-K01/internal/class/model"
"github.com/EngineerProOrg/BE-K01/internal/student/model"
)

// create table ENROLL(
// STUD_ID int,
// CLASS_ID int,
// GRADE varchar(3),
// foreign key (STUD_ID) references STUDENT(STUD_ID),
// foreign key (CLASS_ID) references CLASS(CLASS_ID),
// PRIMARY KEY (STUD_ID, CLASS_ID)
// )

type Enroll struct {
Stud_id int `json:"stud_id" gorm:"column:STUD_ID;primaryKey"`
Stud studentmodel.Student `json:"stud" gorm:"preload:false"`
Class_id int `json:"class_id" gorm:"column:CLASS_ID;primaryKey"`
Class classmodel.Class `json:"class" gorm:"preload:false"`
Grade string `json:"grade" gorm:"column:GRADE"`
}

func (Enroll) TableName() string {
return "ENROLL"
}
11 changes: 11 additions & 0 deletions internal/professor/model/professor.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package professormodel

type Professor struct {
Prof_id int `json:"prof_id" gorm:"column:PROF_ID;primaryKey"`
Prof_lname string `json:"prof_name" gorm:"column:PROF_NAME"`
Prof_fname string `json:"prof_fname" gorm:"column:PROF_FNAME"`
}

func (Professor) TableName() string {
return "PROFESSOR"
}
19 changes: 19 additions & 0 deletions internal/room/model/room.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package roommodel


// create table ROOM (
// ROOM_ID int primary key,
// ROOM_LOC varchar(50),
// ROOM_CAP varchar(50),
// CLASS_ID int
// )
type Room struct {
Room_id int `json:"room_id" gorm:"column:ROOM_ID;primaryKey"`
Room_loc string `json:"room_loc" gorm:"column:ROOM_LOC"`
Room_cap string `json:"room_cap" gorm:"column:ROOM_CAP"`
Class_id int `json:"class_id" gorm:"column:CLASS_ID"`
}

func (Room) TableName() string {
return "ROOM"
}
23 changes: 23 additions & 0 deletions internal/student/model/student.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
// create table STUDENT (
// STUD_ID int primary key,
// STUD_LNAME varchar(50),
// STUD_FNAME varchar(50),
// STUD_STREET varchar(255),
// STUD_CITY varchar(50),
// STUD_ZIP varchar(10)
// )

package studentmodel

type Student struct {
Stud_id int `json:"stud_id" gorm:"column:STUD_ID;primaryKey"`
Stud_lname string `json:"stud_lname" gorm:"column:STUD_LNAME"`
Stud_fname string `json:"stud_fname" gorm:"column:STUD_FNAME"`
Stud_street string `json:"stud_street" gorm:"column:STUD_STREET"`
Stud_city string `json:"stud_city" gorm:"column:STUD_CITY"`
Stud_zip string `json:"stud_zip" gorm:"column:STUD_ZIP"`
}

func (Student) TableName() string {
return "STUDENT"
}