[WIP] Добавил отображение сотрудников на графике, поправил стили, изменил запросы логина

This commit is contained in:
megavrilinvv
2022-12-22 18:18:43 +03:00
parent 838266c0e9
commit 3773c15ad5
6 changed files with 145 additions and 104 deletions

View File

@@ -5,7 +5,8 @@
schedule-body(
:employee-list="employeeList",
:schedules-employee="fetchSchedulesEmployee",
:schedule-list="scheduleList"
:schedule-list="scheduleList",
:serialized="serialized"
)
schedule-bar
</template>
@@ -22,20 +23,63 @@ export default {
return {
employeeList: [],
scheduleList: [],
serialized: [],
};
},
methods: {
fetchSchedules() {
fetchWrapper
.get("general/employee/")
.then((res) => (this.employeeList = res.results));
.then((res) => {
this.employeeList = res.results;
})
.then(() => this.fetchSchedulesEmployee());
},
fetchSchedulesEmployee(id) {
fetchWrapper
.get(`accounts/schedules/?employee=${id}`, "api")
.then((data) => {
this.scheduleList = data.results;
});
fetchSchedulesEmployee() {
this.employeeList.forEach((e) => {
fetchWrapper
.get(`accounts/schedules/?employee=${e.id}`)
.then((data) => {
this.scheduleList.push(...data.results);
})
.then(() => this.filterScheduleEmployee());
});
},
filterScheduleEmployee() {
let serialized = [];
this.scheduleList.forEach((e) => {
let foundedElem = serialized.find((elem) => elem.id === e.employee.id);
if (!foundedElem) {
serialized.push({
first_name: e.employee.first_name,
id: e.employee.id,
last_name: e.employee.last_name,
patronymic: e.employee.patronymic,
schedules: [
{
date: e.date,
end_time: e.end_time,
start_time: e.start_time,
status: e.status,
id: e.id,
title: e.title,
name: e.name,
},
],
});
} else {
foundedElem.schedules.push({
date: e.date,
end_time: e.end_time,
start_time: e.start_time,
status: e.status,
id: e.id,
title: e.title,
name: e.name,
});
}
});
this.serialized = serialized;
},
},
mounted() {