diff --git a/src/pages/schedule/components/ScheduleTable.vue b/src/pages/schedule/components/ScheduleTable.vue
index 081ad79..3e0b291 100644
--- a/src/pages/schedule/components/ScheduleTable.vue
+++ b/src/pages/schedule/components/ScheduleTable.vue
@@ -1,87 +1,46 @@
.schedule.flex-col(:style="themeCell")
- .table-header.flex.w-full.pr-2
- .flex.items-center.justify-center.pl-11(
- :style="{width: 'calc(25% + 43px)'}"
- )
- .text.font-bold Сотрудник
- .column-wrapper.flex
- .schedule-column.flex.flex-col.items-center.justify-center.w-11(
- v-for="day in result",
- :class="{'column-color': changelColumnColor(day)}",
- :style="{width: `calc(100% / ${result.length})`}"
- )
- .text.flex.font-bold(
- :style="{opacity: changeOpacity(day)}"
- ) {{day.format("D")}}
- .text.flex.font-bold(
- :style="{opacity: changeOpacity(day)}"
- ) {{day.format("ddd")}}
- .schedule-wrapper.flex.w-full.flex-col
- .flex.w-full(v-for="schedule in serialized", :key="schedule.id")
- .edit.flex.items-center.justify-center.h-11.w-11
- .flex.icon-edit
- .name-employee.flex.justify-center.items-center.cursor-pointer
- span {{trimOwnerName(schedule.last_name, schedule.first_name, schedule.patronymic)}}
- .row.flex
- .cell.flex.flex-col.items-center.justify-center.w-11.h-11.cursor-pointer.transition(
- v-for="day in result",
- :key="day",
- :id="schedule.id + day",
- @click="choiceCell(day, schedule.id, schedule); clearSelect(selectEmployee)",
- :class="choiceState(day, schedule.id)",
- :style="{backgroundColor: choiceDay(day, schedule.id) ? choiceColor(day, schedule) : '', width: `calc(100% / ${result.length})`}"
- )
- .flex(
- :class="{'cell-work': choiceState(day, schedule.id)?.status, 'show-time': showTime}"
- ) {{choiceDay(day, schedule.id) ? choiceWorks(day, schedule) : ''}}
- .flex.w-full.mt-4(
- v-if="clearEmployee.length > 0",
- :class="{'schedule-select': selectEmployee.label}"
+ schedule-table-header(:result="result")
+ schedule-table-body(
+ :serialized="serialized",
+ :trim-owner-name="trimOwnerName",
+ :result="result",
+ :choice-cell="choiceCell",
+ :clear-select="clearSelect",
+ :select-employee="selectEmployee",
+ :choice-state="choiceState",
+ :buttons="buttons",
+ :show-time="showTime",
+ :schedule-list="scheduleList"
+ )
+ schedule-table-select(
+ v-if="clearEmployee.length > 0",
+ :select-employee="selectEmployee",
+ :clear-employee="clearEmployee",
+ :result="result",
+ :choice-cell="choiceCell",
+ :choice-state="choiceState",
+ :trim-owner-name="trimOwnerName",
)
- .edit.flex.items-center.justify-center.h-11.w-11(v-if="selectEmployee.label")
- .flex.icon-edit(v-if="selectEmployee.label")
- //- base-button(
- //- confirm,
- //- rounded,
- //- outlined,
- //- :size="20",
- //- @click="saveEmployee",
- //- v-if="selectEmployee.label"
- //- )
- //- .icon-ok.text-xsm(class="pt-[3px]")
- .text.flex.justify-center.items-center.cursor-pointer(
- :class="{'select-name': selectEmployee.label}"
- )
- base-custom-select(
- v-if="!selectEmployee.label",
- :items="ownersList",
- v-model="selectEmployee",
- placeholder="Добавить сотрудника",
- :style="{border: 'none', justifyContent: 'center'}"
- )
- .flex.justify-center(v-else) {{selectEmployee.label}}
- .row.flex
- .cell.flex.flex-col.items-center.justify-center.w-11.h-11.cursor-pointer(
- v-if="selectEmployee.label",
- v-for="day in result",
- :key="day",
- :id="selectEmployee.id + day",
- @click="choiceCell(day, selectEmployee.id)",
- :class="choiceState(day, selectEmployee.id)",
- :style="{width: `calc(100% / ${result.length})`}"
- )
+
+
diff --git a/src/pages/schedule/components/ScheduleTableHeader.vue b/src/pages/schedule/components/ScheduleTableHeader.vue
new file mode 100644
index 0000000..05e0ba5
--- /dev/null
+++ b/src/pages/schedule/components/ScheduleTableHeader.vue
@@ -0,0 +1,60 @@
+
+ .table-header.flex.w-full.pr-2
+ .flex.items-center.justify-center.pl-11(
+ :style="{width: 'calc(25% + 43px)'}"
+ )
+ .text.font-bold(
+ :style="{color: 'var(--btn-blue-color)'}"
+ ) Сотрудник
+ .column-wrapper.flex
+ .flex.flex-col.items-center.justify-center.w-11(
+ v-for="day in result",
+ :class="{'column-color': changelColumnColor(day)}",
+ :style="{width: `calc(100% / ${result.length})`}"
+ )
+ .text.flex.font-bold(
+ :style="{opacity: changeOpacity(day)}"
+ ) {{day.format("D")}}
+ .text.flex.font-bold(
+ :style="{opacity: changeOpacity(day)}"
+ ) {{day.format("ddd")}}
+
+
+
+
+
diff --git a/src/pages/schedule/components/ScheduleTableSelect.vue b/src/pages/schedule/components/ScheduleTableSelect.vue
new file mode 100644
index 0000000..2cb806b
--- /dev/null
+++ b/src/pages/schedule/components/ScheduleTableSelect.vue
@@ -0,0 +1,110 @@
+
+ .flex.w-full.mt-4(
+ :class="{'schedule-select': selectEmployee.label}"
+ )
+ .edit.flex.items-center.justify-center.h-11.w-11(v-if="selectEmployee.label")
+ .flex.icon-edit(v-if="selectEmployee.label")
+ //- base-button(
+ //- confirm,
+ //- rounded,
+ //- outlined,
+ //- :size="20",
+ //- @click="saveEmployee",
+ //- v-if="selectEmployee.label"
+ //- )
+ //- .icon-ok.text-xsm(class="pt-[3px]")
+ .flex.justify-center.items-center.cursor-pointer(
+ :class="{'select-name': selectEmployee.label}",
+ :style="{color: 'var(--btn-blue-color)'}"
+ )
+ base-custom-select(
+ v-if="!selectEmployee.label",
+ :items="ownersList",
+ v-model="selectEmployee",
+ placeholder="Добавить сотрудника",
+ :style="{border: 'none', justifyContent: 'center'}"
+ )
+ .flex.justify-center(v-else) {{selectEmployee.label}}
+ .row.flex
+ .cell.flex.flex-col.items-center.justify-center.w-11.h-11.cursor-pointer(
+ v-if="selectEmployee.label",
+ v-for="day in result",
+ :key="day",
+ :id="selectEmployee.id + day",
+ @click="choiceCell(day, selectEmployee.id)",
+ :class="choiceState(day, selectEmployee.id)",
+ :style="{width: `calc(100% / ${result.length})`}"
+ )
+
+
+
+
+