usthing_api

package
v0.0.0-...-1feadb0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 17, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BookSession

func BookSession(userId string, detail BookDetail) error

func GetRoomName

func GetRoomName(id string) (string, error)

func USThingHeaders

func USThingHeaders(req *http.Request) http.Header

func UnbookLibrary

func UnbookLibrary(userId string, id string) error

Types

type Area

type Area struct {
	ID       string     `json:"id"`
	AreaName string     `json:"area_name"`
	Rooms    []RoomData `json:"rooms"`
}

func GetAreas

func GetAreas() (rooms []Area, err error)

type Attribute

type Attribute struct {
	CrseAttr          string `json:"crseAttr"`
	CrseAttrValue     string `json:"crseAttrValue"`
	CrseAttrDesc      string `json:"crseAttrDesc"`
	CrseAttrValueDesc string `json:"crseAttrValueDesc"`
}

type BookDetail

type BookDetail struct {
	AreaID   string
	RoomID   string
	Year     string
	Month    string
	Day      string
	Hour     string
	Minute   string
	Duration string
}

type Booking

type Booking struct {
	ID                string `json:"id"`
	Name              string `json:"name"`
	RoomID            string `json:"room_id"`
	StartTime         string `json:"start_time"`
	EndTime           string `json:"end_time"`
	Type              string `json:"type"`
	CreateBy          string `json:"create_by"`
	Description       string `json:"description"`
	IcalUID           string `json:"ical_uid"`
	UserClass         string `json:"userclass"`
	StartTimeYYYYMMDD string `json:"start_time_YYYYMMDD"`
	StartTimeHhmm     string `json:"start_time_hhmm"`
	EndTimeYYYYMMDD   string `json:"end_time_YYYYMMDD"`
	EndTimeHhmm       string `json:"end_time_hhmm"`
}

Under data.booking field in JSON

func GetMyBooking

func GetMyBooking(userId string) []Booking

type Class

type Class struct {
	Section         string `json:"section"`
	ClassNbr        int    `json:"classNbr"`
	ClassType       string `json:"classType"`
	ComponentType   string `json:"componentType"`
	AssociatedClass int    `json:"associatedClass"`
	Remarks         string `json:"remarks"`
	EnrlCap         int    `json:"enrlCap"`
	EnrlTot         int    `json:"enrlTot"`
	WaitTot         int    `json:"waitTot"`
	Consent         bool   `json:"consent"`
	ClassOpen       bool   `json:"classOpen"`
	// ReserveCap      []string   `json:"reserveCap"`
	Schedules []Schedule `json:"schedules"`
}

type ClassEnrollment

type ClassEnrollment struct {
	TermCode                 string                     `json:"termCode"`
	TermName                 string                     `json:"termName"`
	ClassNumber              int32                      `json:"classNumber"`
	CourseCode               string                     `json:"crseCode"`
	CourseTitle              string                     `json:"crseTitle"`
	CreditUnit               string                     `json:"crseUnit"`
	ClassSection             string                     `json:"classSection"`
	FinalExaminationSchedule []FinalExaminationSchedule `json:"studentFinalExamSchedule"`
}

type ClassEnrollmentInfo

type ClassEnrollmentInfo struct {
	// StudentID string      `json:"stdtID"`
	Info []StudentInfo `json:"stdtInfo"`
}

func GetClassEnrollment

func GetClassEnrollment(userId string) (ClassEnrollmentInfo, error)

type ClassQuotaCourse

type ClassQuotaCourse struct {
	CrseId       string      `json:"crseId"`
	AcadCareer   string      `json:"acadCareer"`
	Subject      string      `json:"subject"`
	CatalogNbr   string      `json:"catalogNbr"`
	CrseCode     string      `json:"crseCode"`
	CrseDesc     string      `json:"crseDesc"`
	LongDesc     string      `json:"longDesc"`
	PrevCrseCode string      `json:"prevCrseCode"`
	PreReq       string      `json:"preReq"`
	CoReq        string      `json:"coReq"`
	Exclusion    string      `json:"exclusion"`
	Credit       int         `json:"credit"`
	Attributes   []Attribute `json:"attributes"`
	Classes      []Class     `json:"classes"`
}

type ClassQuotaInfo

type ClassQuotaInfo struct {
	Term     string             `json:"term"`
	TermDesc string             `json:"term_desc"`
	Courses  []ClassQuotaCourse `json:"courses"`
}

func GetClassQuotas

func GetClassQuotas(userId string) (ClassQuotaInfo, error)

type Data

type Data struct {
	Rooms []Room `json:"rooms"`
}

type FinalExaminationSchedule

type FinalExaminationSchedule struct {
	TermCode       string `json:"termCode"`
	CourseCode     string `json:"crseCode"`
	ClassSection   string `json:"classSection"`
	ExamSeqNumber  int    `json:"examSeqNbr"`
	ExamFacilityID string `json:"examFacilityId"`
	ExamRoom       string `json:"examRoom"`
	ExamDate       string `json:"examDate"`
	ExamStartTime  string `json:"examStartTime"`
	ExamEndTime    string `json:"examEndTime"`
	ExamRemarks    string `json:"examRemarks"`
}

type Room

type Room struct {
	ID       string `json:"id"`
	RoomName string `json:"room_name"`
	Capacity string `json:"capacity"`
	// CustomHTML   string    `json:"custom_html"`
	BookingLink string `json:"booking_link"`
	// CalendarLink string    `json:"calendar_link"`
	// StartDate    string    `json:"start_date"`
	// EndDate      string    `json:"end_date"`
	Sessions []Session `json:"sessions"`
}

func GetAvailableRooms

func GetAvailableRooms(rooms *SessionsByDay, timeSlots []string) []Room

type RoomData

type RoomData struct {
	ID       string `json:"id"`
	RoomName string `json:"room_name"`
	Capacity string `json:"capacity"`
}

type Schedule

type Schedule struct {
	Instructors []string `json:"instructors"`
	FacilityId  string   `json:"facilityId"`
	Venue       string   `json:"venue"`
	StartDt     string   `json:"startDt"`
	EndDt       string   `json:"endDt"`
	Weekdays    []int    `json:"weekdays"`
	StartTime   string   `json:"startTime"`
	EndTime     string   `json:"endTime"`
}

type Session

type Session struct {
	// StartTime         Time   `json:"start_time"`
	//StartTimeYYYYMMDD string `json:"start_time_YYYYMMDD"`
	StartTimeHhmm string `json:"start_time_hhmm"`
	//EndTime           Time   `json:"end_time"`
	//EndTimeYYYYMMDD   string `json:"end_time_YYYYMMDD"`
	EndTimeHhmm string `json:"end_time_hhmm"`
	Status      Status `json:"status"`
}

type SessionsByDay

type SessionsByDay struct {
	Status string `json:"status"`
	Data   Data   `json:"data"`
}

func GetSessionsByDay

func GetSessionsByDay(area_id string, year string, month string, day string) (*SessionsByDay, error)

type Status

type Status string
const (
	Closed      Status = "closed"
	Available   Status = "available"
	Unavailable Status = "unavailable"
)

type StudentInfo

type StudentInfo struct {
	PlanName    string            `json:"planName"`
	Enrollments []ClassEnrollment `json:"studentClassEnrl"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL