Skip to content
This repository was archived by the owner on Mar 26, 2023. It is now read-only.

Commit cef53aa

Browse files
committed
changed api requets
1 parent 7c39392 commit cef53aa

File tree

1 file changed

+27
-11
lines changed

1 file changed

+27
-11
lines changed

src/views/Timetable.vue

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
<div class="timetable">
33
<div v-if="!this.loaded" class="lds-dual-ring"></div>
44
<div v-else class='container'>
5-
<div class='info'>{{ this.timetable.number }} группа</div>
6-
<div class="no-events" v-if="!this.timetable.events.length">мероприятия отсутствуют</div>
5+
<div class='info'>{{ this.groupInfo.number }} группа</div>
6+
<div class="no-events" v-if="!this.timetable.length">мероприятия отсутствуют</div>
77
<ul v-else>
8-
<EventRow v-for="lesson of this.timetable.events" :key='lesson.id' :lesson="lesson" />
8+
<EventRow v-for="lesson of this.timetable" :key='lesson.id' :lesson="lesson" />
99
</ul>
1010

1111
</div>
@@ -20,14 +20,16 @@ export default {
2020
mounted() {
2121
this.groupId = localStorage.getItem('timetable-group-id');
2222
this.$store.commit("changePage", this.pageId);
23-
this.loadTimetableOnDate(this.$store.state.date)
23+
this.loadGroupInfo();
24+
this.loadTimetableOnDate(this.$store.state.date);
2425
},
2526
data() {
2627
return {
2728
loaded: true,
2829
pageId: 1,
2930
groupId: null,
30-
timetable: { events: [] },
31+
groupInfo: {number:''},
32+
timetable: [],
3133
};
3234
},
3335
computed: {
@@ -44,22 +46,36 @@ export default {
4446
EventRow: EventRow,
4547
},
4648
methods: {
47-
loadTimetableOnDate(date) {
49+
loadGroupInfo(){
50+
var url = new URL(`${process.env.VUE_APP_API_TIMETABLE}/timetable/group/${this.groupId}`);
4851
this.loaded = false;
52+
fetch(url).then(response => response.json())
53+
.then(json => {
54+
this.groupInfo = json;
55+
this.loaded = true;
56+
})
57+
},
58+
loadTimetableOnDate(date) {
4959
var time_start = new Date(date);
5060
time_start.setHours(time_start.getHours() - date.getTimezoneOffset()/60)
5161
console.log(time_start.toISOString())
5262
var time_end = new Date(time_start);
5363
time_end.setDate(time_start.getDate() + 1)
54-
var url = new URL(`${process.env.VUE_APP_API_TIMETABLE}/timetable/group/${this.groupId}`),
55-
params = { start: time_start.toISOString().slice(0, 10), end: time_end.toISOString().slice(0, 10) }
64+
var url = new URL(`${process.env.VUE_APP_API_TIMETABLE}/timetable/event/`),
65+
params = {
66+
start: time_start.toISOString().slice(0, 10),
67+
end: time_end.toISOString().slice(0, 10),
68+
limit: 0,
69+
offset: 0,
70+
group_id: this.groupId }
5671
Object.keys(params).forEach(key => url.searchParams.append(key, params[key]))
57-
fetch(url)
58-
.then(response => response.json())
72+
this.loaded = false;
73+
fetch(url).then(response => response.json())
5974
.then(json => {
60-
this.timetable = json;
75+
this.timetable = json.items;
6176
this.loaded = true;
6277
})
78+
6379
}
6480
}
6581
};

0 commit comments

Comments
 (0)