diff --git a/src/components/schedule/tabs/tabs.component.html b/src/components/schedule/tabs/tabs.component.html index 4183984..072c955 100644 --- a/src/components/schedule/tabs/tabs.component.html +++ b/src/components/schedule/tabs/tabs.component.html @@ -3,34 +3,29 @@ (selectedTabChange)="chooseTabs($event.index)">
- +
- +
- +
- diff --git a/src/components/schedule/tabs/tabs.component.ts b/src/components/schedule/tabs/tabs.component.ts index a262e68..e85a3f0 100644 --- a/src/components/schedule/tabs/tabs.component.ts +++ b/src/components/schedule/tabs/tabs.component.ts @@ -1,7 +1,7 @@ import {AfterViewInit, Component, EventEmitter, Output, ViewChild} from '@angular/core'; import {OtherComponent, SelectData} from "@component/schedule/tabs/other/other.component"; import {MatTab, MatTabGroup} from "@angular/material/tabs"; -import {map, Observable} from "rxjs"; +import {Observable} from "rxjs"; import {FormsModule, ReactiveFormsModule} from "@angular/forms"; import {MatButton} from "@angular/material/button"; import {DataSpinnerComponent} from "@component/common/data-spinner/data-spinner.component"; @@ -74,30 +74,6 @@ export class TabsComponent implements AfterViewInit { TabsSelect.Group, id, this.scheduleApi.getByGroup(id) - .pipe( - map(g => - g.map(data => - ({ - dayOfWeek: data.dayOfWeek, - pairNumber: data.pairNumber, - isEven: data.isEven, - discipline: data.discipline, - disciplineId: data.disciplineId, - isExcludedWeeks: data.isExcludedWeeks, - weeks: data.weeks, - typeOfOccupations: data.typeOfOccupations, - group: data.group, - groupId: data.groupId, - lectureHalls: data.lectureHalls, - lectureHallsId: data.lectureHallsId, - professors: data.professors, - professorsId: data.professorsId, - campus: data.campus, - campusId: data.campusId, - linkToMeet: data.linkToMeet - })) - ) - ) ] ); } @@ -108,30 +84,6 @@ export class TabsComponent implements AfterViewInit { TabsSelect.Professor, id, this.scheduleApi.getByProfessor(id) - .pipe( - map(p => - p.map(data => - ({ - dayOfWeek: data.dayOfWeek, - pairNumber: data.pairNumber, - isEven: data.isEven, - discipline: data.discipline, - disciplineId: data.disciplineId, - isExcludedWeeks: data.isExcludedWeeks, - weeks: data.weeks, - typeOfOccupations: data.typeOfOccupations, - group: data.group, - groupId: data.groupId, - lectureHalls: data.lectureHalls, - lectureHallsId: data.lectureHallsId, - professors: data.professors, - professorsId: data.professorsId, - campus: data.campus, - campusId: data.campusId, - linkToMeet: data.linkToMeet - })) - ) - ) ] ); } @@ -142,30 +94,6 @@ export class TabsComponent implements AfterViewInit { TabsSelect.LectureHall, id, this.scheduleApi.getByLectureHall(id) - .pipe( - map(lh => - lh.map(data => - ({ - dayOfWeek: data.dayOfWeek, - pairNumber: data.pairNumber, - isEven: data.isEven, - discipline: data.discipline, - disciplineId: data.disciplineId, - isExcludedWeeks: data.isExcludedWeeks, - weeks: data.weeks, - typeOfOccupations: data.typeOfOccupations, - group: data.group, - groupId: data.groupId, - lectureHalls: data.lectureHalls, - lectureHallsId: data.lectureHallsId, - professors: data.professors, - professorsId: data.professorsId, - campus: data.campus, - campusId: data.campusId, - linkToMeet: data.linkToMeet - })) - ) - ) ] ); } @@ -240,4 +168,19 @@ export class TabsComponent implements AfterViewInit { @ViewChild('tabGroup') tabs!: MatTabGroup; protected readonly AuthRoles = AuthRoles; + + protected otherFilter() { + this.eventResult.emit( + [ + TabsSelect.Other, + 0, + this.scheduleApi.postSchedule(({ + groups: this.groupEx.selectedIds, + disciplines: this.disciplineEx.selectedIds, + professors: this.professorEx.selectedIds, + lectureHalls: this.lectureHallEx.selectedIds + })) + ] + ); + } } diff --git a/src/shared/requests/v1/scheduleRequest.ts b/src/shared/requests/v1/scheduleRequest.ts index cce8737..6fa3e96 100644 --- a/src/shared/requests/v1/scheduleRequest.ts +++ b/src/shared/requests/v1/scheduleRequest.ts @@ -13,25 +13,25 @@ /** * Represents a request object for retrieving schedules based on various filters. */ -export interface ScheduleRequest { - /** - * Gets or sets an array of group IDs. - */ - groups?: Array; - /** - * Gets or sets a value indicating whether to retrieve schedules for even weeks. - */ - isEven?: boolean; - /** - * Gets or sets an array of discipline IDs. - */ - disciplines?: Array; - /** - * Gets or sets an array of professor IDs. - */ - professors?: Array; - /** - * Gets or sets an array of lecture hall IDs. - */ - lectureHalls?: Array; -} \ No newline at end of file +export interface ScheduleRequest { + /** + * Gets or sets an array of group IDs. + */ + groups?: Array; + /** + * Gets or sets a value indicating whether to retrieve schedules for even weeks. + */ + isEven?: boolean; + /** + * Gets or sets an array of discipline IDs. + */ + disciplines?: Array; + /** + * Gets or sets an array of professor IDs. + */ + professors?: Array; + /** + * Gets or sets an array of lecture hall IDs. + */ + lectureHalls?: Array; +}