diff --git a/src/components/modals/EditShiftModal.vue b/src/components/modals/EditShiftModal.vue index f2315d9..ebfc6da 100644 --- a/src/components/modals/EditShiftModal.vue +++ b/src/components/modals/EditShiftModal.vue @@ -219,13 +219,13 @@ watch(isOpen, (val) => emit('update:modelValue', val)); // Mapeamento de nomes para valores de dias const diaSemanaMap = { - 'Domingo': 0, - 'Segunda-feira': 1, - 'Terça-feira': 2, - 'Quarta-feira': 3, - 'Quinta-feira': 4, - 'Sexta-feira': 5, - 'Sábado': 6 + 'Domingo': 1, + 'Segunda-feira': 2, + 'Terça-feira': 3, + 'Quarta-feira': 4, + 'Quinta-feira': 5, + 'Sexta-feira': 6, + 'Sábado': 7 }; // Atualiza os dados do formulário com shiftData recebido diff --git a/src/stores/shift.js b/src/stores/shift.js index c5a21be..ae2424d 100644 --- a/src/stores/shift.js +++ b/src/stores/shift.js @@ -112,11 +112,11 @@ export const useShiftStore = defineStore('shifts', { end_time: shiftData.end_time, interval_start: shiftData.interval_start, interval_end: shiftData.interval_end, - type_interval: shiftData.type_interval, // "manual" ou "automatic" dependendo da checkbox + type_interval: shiftData.type_interval || 'manual', // "manual" ou "automatic" dependendo da checkbox description: shiftData.description || '', tolerance: shiftData.tolerance || 0, service_instance_id: authStore.service_instance_id, - time_schedule_ids: shiftData.time_schedule_ids || [] + time_schedule_ids: shiftData.time_schedule_ids || [], }; console.log('Enviando dados para a API:', payload); @@ -153,18 +153,24 @@ export const useShiftStore = defineStore('shifts', { /** * Atualiza os dados de um turno */ - async updateShift(id, shift) { + async updateShift(id, shiftData) { const url = `/shift/${id}`; this.loading = true; this.error = null; + const authStore = useAuthStore(); try { const response = await api.put(url, { - name: shift.name, - days: shift.days, - break_time: shift.break_time, - break_type: shift.break_type, - status: shift.status, + name: shiftData.nome, + start_time: shiftData.entrada, + end_time: shiftData.saida_final, + interval_start: shiftData.saida_almoco, + interval_end: shiftData.retorno_almoco, + type_interval: shiftData.almoco_automatico ? 'Automatico' : 'Manual', // "manual" ou "automatic" dependendo da checkbox + description: shiftData.descricao || '', + tolerance: shiftData.tolerancia || 0, + service_instance_id: authStore.service_instance_id, + time_schedule_ids: shiftData.dias_semana || [] }); const index = this.shifts.findIndex((s) => s.id === id); diff --git a/src/views/Shifts.vue b/src/views/Shifts.vue index 4dc1448..6d6f738 100644 --- a/src/views/Shifts.vue +++ b/src/views/Shifts.vue @@ -65,7 +65,7 @@