fix: add docstrings
This commit is contained in:
parent
97f6d7ad7b
commit
0b5b89e91b
3 changed files with 10 additions and 0 deletions
|
|
@ -18,6 +18,7 @@ export default class Comcigan {
|
||||||
|
|
||||||
private readonly dataManager = new DataManager(this.rest)
|
private readonly dataManager = new DataManager(this.rest)
|
||||||
|
|
||||||
|
/** 학교를 검색합니다. */
|
||||||
async searchSchools(schoolName: string): Promise<School[]> {
|
async searchSchools(schoolName: string): Promise<School[]> {
|
||||||
const { mainRoute, searchRoute } = await this.dataManager.getData()
|
const { mainRoute, searchRoute } = await this.dataManager.getData()
|
||||||
const res = await this.rest.get(
|
const res = await this.rest.get(
|
||||||
|
|
@ -34,6 +35,7 @@ export default class Comcigan {
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 학교 코드를 이용해 학교 시간표를 불러옵니다. */
|
||||||
async getRawTimetable(schoolCode: number): Promise<Timetable[][][][]> {
|
async getRawTimetable(schoolCode: number): Promise<Timetable[][][][]> {
|
||||||
const { mainRoute, timetableRoute, teacherCode, dayCode, subjectCode } =
|
const { mainRoute, timetableRoute, teacherCode, dayCode, subjectCode } =
|
||||||
await this.dataManager.getData()
|
await this.dataManager.getData()
|
||||||
|
|
@ -62,6 +64,7 @@ export default class Comcigan {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 학교 코드를 이용해 학교 시간표를 불러오고, `TimetableManager`로 변환해 사용할 수 있는 형태로 제공합니다. */
|
||||||
async getTimetable(schoolCode: number) {
|
async getTimetable(schoolCode: number) {
|
||||||
return new TimetableManager(await this.getRawTimetable(schoolCode))
|
return new TimetableManager(await this.getRawTimetable(schoolCode))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ export const RegExes = {
|
||||||
WhiteSpace: /\0+$/,
|
WhiteSpace: /\0+$/,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 요일 */
|
||||||
export enum Weekday {
|
export enum Weekday {
|
||||||
Monday = 1,
|
Monday = 1,
|
||||||
Tuesday,
|
Tuesday,
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,29 @@
|
||||||
export interface Timetable {
|
export interface Timetable {
|
||||||
|
/** 과목 */
|
||||||
subject: string
|
subject: string
|
||||||
|
/** 교사 */
|
||||||
teacher: string
|
teacher: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export class TimetableManager {
|
export class TimetableManager {
|
||||||
constructor(private readonly timetables: Timetable[][][][]) {}
|
constructor(private readonly timetables: Timetable[][][][]) {}
|
||||||
|
|
||||||
|
/** 특정 학년의 시간표를 가져옵니다. */
|
||||||
getByGrade(grade: number) {
|
getByGrade(grade: number) {
|
||||||
return this.timetables[grade - 1]
|
return this.timetables[grade - 1]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 특정 반의 시간표를 가져옵니다. */
|
||||||
getByClass(grade: number, cls: number) {
|
getByClass(grade: number, cls: number) {
|
||||||
return this.timetables[grade - 1][cls - 1]
|
return this.timetables[grade - 1][cls - 1]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 특정 반의 특정 요일 시간표를 가져옵니다. */
|
||||||
getByDay(grade: number, cls: number, day: number) {
|
getByDay(grade: number, cls: number, day: number) {
|
||||||
return this.timetables[grade - 1][cls - 1][day - 1]
|
return this.timetables[grade - 1][cls - 1][day - 1]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 특정 반의 특정 요일의 특정 교시 시간표를 가져옵니다. */
|
||||||
getByPeriod(grade: number, cls: number, day: number, period: number) {
|
getByPeriod(grade: number, cls: number, day: number, period: number) {
|
||||||
return this.timetables[grade - 1][cls - 1][day - 1][period - 1]
|
return this.timetables[grade - 1][cls - 1][day - 1][period - 1]
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue