[WIP] Добавил отображение времени текущей даты при замене смен, скрыл отображение выделенной ячейки при сохранении/удалении

This commit is contained in:
megavrilinvv
2023-01-25 17:03:01 +03:00
parent 082f92937d
commit 48f78626c1
5 changed files with 70 additions and 33 deletions

View File

@@ -28,6 +28,8 @@
:template="template",
:trim-owner-name="trimOwnerName",
:open-form="openForm",
:active-cell="activeCell",
:set-active-cell="setActiveCell",
:change-shift="postUpdateSchedule",
@schedule-employee="createScheduleEmployee",
@schedules="distributeRequest"
@@ -43,11 +45,11 @@
<script>
import * as moment from "moment";
import BaseLoader from "@/components/Loader/BaseLoader.vue";
import { fetchWrapper } from "@/shared/fetchWrapper.js";
import ScheduleHeader from "@/pages/schedule/components/ScheduleHeader.vue";
import ScheduleBar from "@/pages/schedule/components/ScheduleBar.vue";
import ScheduleTable from "@/pages/schedule/components/ScheduleTable.vue";
import { fetchWrapper } from "@/shared/fetchWrapper.js";
import BaseLoader from "@/components/Loader/BaseLoader.vue";
export default {
name: "TheSchedule",
@@ -78,6 +80,7 @@ export default {
date: null,
start_time: "",
end_time: "",
schedules: [],
},
buttons: [
{
@@ -110,6 +113,7 @@ export default {
showTime: false,
schedulesDate: {},
currenSchedule: null,
activeCell: true,
};
},
computed: {
@@ -128,6 +132,7 @@ export default {
e.first_name,
e.patronymic
);
this.replacementSheet.schedules = e.schedules;
},
changeShowTime() {
this.showTime = !this.showTime;
@@ -137,6 +142,9 @@ export default {
let checkedPatronymic = patronymic !== null ? patronymic[0] + "." : "";
return `${lastName} ${checkedFirstName}${checkedPatronymic}`;
},
setActiveCell() {
this.activeCell = true;
},
clearSelect(employee) {
if (employee) {
employee.label = "";
@@ -145,6 +153,8 @@ export default {
this.selectEmployee.label = "";
this.selectEmployeeid = null;
}
if (this.buttons.find((e) => e.active))
this.buttons.find((e) => e.active).active = false;
},
fetchSchedules() {
fetchWrapper
@@ -217,6 +227,7 @@ export default {
this.outsideSchedules = outside;
},
postCreateSchedules() {
this.activeCell = false;
let data = {
employee: this.schedulesDate.id,
active_flg: true,
@@ -285,6 +296,7 @@ export default {
};
},
deleteSchedule() {
this.activeCell = false;
let ids = "";
if (this.insideSchedules?.length > 0) {
this.insideSchedules.forEach((e) => (ids += e.id + ","));
@@ -313,11 +325,26 @@ export default {
this.replacementSheet.start_time = localDatetime;
this.replacementSheet.end_time = localDatetime;
},
setShiftTime() {
let dateSchedule = this.replacementSheet.schedules.find(
(e) =>
e.date === moment(this.replacementSheet.date).format("YYYY-MM-DD")
);
this.replacementSheet.start_time = dateSchedule?.start_time;
this.replacementSheet.end_time = dateSchedule?.end_time;
},
},
watch: {
startMonth() {
this.fetchSchedulesEmployee();
},
replacementSheet: {
immediate: true,
handler(newVal) {
if (newVal) this.setShiftTime();
},
deep: true,
},
},
mounted() {
this.fetchSchedules();
@@ -337,14 +364,18 @@ export default {
opacity: 0
transform: translateY(0px)
pointer-events: none
.schedule-enter-active
transition: 0.3s ease
.schedule-leave-to
opacity: 0
transform: translateY(0px)
pointer-events: none
.schedule-leave-active
transition: 0.3s ease
.schedule-move
transition: 0.3s ease
</style>