diff --git a/src/modules/employee-list/components/add-modify-dialog-schedule.vue b/src/modules/employee-list/components/add-modify-dialog-schedule.vue index a156bfd..237d286 100644 --- a/src/modules/employee-list/components/add-modify-dialog-schedule.vue +++ b/src/modules/employee-list/components/add-modify-dialog-schedule.vue @@ -28,6 +28,7 @@ import { useEmployeeListApi } from '../composables/use-employee-api'; preset_options.value = getPresetOptions(); const current_option = preset_options.value.find(option => option.value === employee_store.employee.preset_id); current_preset.value = current_option ?? { label: undefined, value: -1 }; + schedule_preset_store.setCurrentSchedulePreset(current_preset.value.value); }); diff --git a/src/modules/employee-list/components/employee-list-table.vue b/src/modules/employee-list/components/employee-list-table.vue index 1461281..b533e4d 100644 --- a/src/modules/employee-list/components/employee-list-table.vue +++ b/src/modules/employee-list/components/employee-list-table.vue @@ -15,7 +15,7 @@ const employee_store = useEmployeeStore(); const timesheet_store = useTimesheetStore(); const ui_store = useUiStore(); - const visible_columns = ref<(keyof EmployeeProfile)[]>(['first_name', 'email', 'company_name', 'supervisor_full_name', 'company_name', 'job_title', 'last_work_day']); + const visible_columns = ref<(keyof EmployeeProfile)[]>(['first_name', 'email', 'job_title', 'last_work_day']); const table_grid_container = ref(null); @@ -72,12 +72,12 @@ :columns="employee_list_columns" row-key="email" :rows-per-page-options="[0]" - :pagination="{ sortBy: 'last_work_day', descending: true, }" + :pagination="{ sortBy: 'first_name' }" :filter="filters" :filter-method="filterEmployeeRows" class="bg-transparent no-shadow sticky-header-table" :style="$q.screen.lt.md ? '' : 'width: 80vw;'" - :table-class="$q.dark.isActive ? 'q-py-none q-mx-md rounded-10 bg-dark shadow-10' : 'q-py-none q-mx-md rounded-10 bg-white shadow-10'" + :table-class="$q.dark.isActive ? 'q-py-none q-mx-md rounded-10 bg-dark shadow-10 hide-scrollbar' : 'q-py-none q-mx-md rounded-10 bg-white shadow-10 hide-scrollbar'" color="accent" table-header-class="text-accent text-uppercase" card-container-class="justify-center" @@ -183,15 +183,15 @@ >
[] = [ label: 'employee_list.table.role', field: 'job_title', align: 'left', - sortable: true, }, { name: 'last_work_day', diff --git a/src/modules/employee-list/services/employee-list-service.ts b/src/modules/employee-list/services/employee-list-service.ts index 0c546e1..d2c0c7d 100644 --- a/src/modules/employee-list/services/employee-list-service.ts +++ b/src/modules/employee-list/services/employee-list-service.ts @@ -19,7 +19,7 @@ export const EmployeeListService = { return response.data; }, - createNewEmployee: async (profile: Omit): Promise> => { + createNewEmployee: async (profile: Omit): Promise> => { const response = await api.post('employees/create', profile); return response.data; }, diff --git a/src/stores/employee-store.ts b/src/stores/employee-store.ts index 0fbf103..7a243f9 100644 --- a/src/stores/employee-store.ts +++ b/src/stores/employee-store.ts @@ -13,18 +13,19 @@ export const useEmployeeStore = defineStore('employee', () => { const is_loading = ref(false); const openAddModifyDialog = async (employee_email?: string) => { - is_add_modify_dialog_open.value = true; - + if (employee_email === undefined) { management_mode.value = 'add_employee' employee.value = new EmployeeProfile(); + is_add_modify_dialog_open.value = true; return; } - + is_loading.value = true; management_mode.value = 'modify_employee'; await getEmployeeDetails(employee_email); is_loading.value = false; + is_add_modify_dialog_open.value = true; } const closeAddModifyDialog = () => { @@ -68,7 +69,7 @@ export const useEmployeeStore = defineStore('employee', () => { let response; if (management_mode.value === 'add_employee') { - const { birth_date, external_payroll_id, last_work_day, ...create_payload} = profile; + const { birth_date, last_work_day, ...create_payload} = profile; response = await EmployeeListService.createNewEmployee(create_payload); } else { diff --git a/src/stores/schedule-presets.store.ts b/src/stores/schedule-presets.store.ts index 8dc72a4..434db22 100644 --- a/src/stores/schedule-presets.store.ts +++ b/src/stores/schedule-presets.store.ts @@ -10,14 +10,6 @@ export const useSchedulePresetsStore = defineStore('schedule_presets_store', () const current_schedule_preset = ref(new SchedulePresetFrontend); const is_manager_open = ref(false); - const setCurrentSchedulePreset = (preset_id: number) => { - if (preset_id === -1) { - current_schedule_preset.value = new SchedulePresetFrontend; - return; - } - current_schedule_preset.value = new SchedulePresetFrontend(schedule_presets.value.find(preset => preset.id === preset_id)!) - }; - const openSchedulePresetManager = (preset_id: number) => { if (preset_id === -1) { current_schedule_preset.value = new SchedulePresetFrontend; @@ -27,6 +19,14 @@ export const useSchedulePresetsStore = defineStore('schedule_presets_store', () is_manager_open.value = true; }; + + const setCurrentSchedulePreset = (preset_id: number) => { + if (preset_id === -1) { + current_schedule_preset.value = new SchedulePresetFrontend; + return; + } + current_schedule_preset.value = new SchedulePresetFrontend(schedule_presets.value.find(preset => preset.id === preset_id)!) + }; const createSchedulePreset = async (preset: SchedulePreset): Promise => { try {