feat: add date range filters for employee time records in homologacao page
- Introduced date range filters for selecting start and end dates, defaulting to the last 30 days for improved user experience. - Enhanced the UI layout to include form controls for selecting employees and date ranges, ensuring better accessibility and usability. - Updated data handling logic to utilize the new date filters for querying employee time records.
This commit is contained in:
@@ -19,6 +19,12 @@
|
||||
let mostrandoModalDetalhes = $state(false);
|
||||
let mostrandoModalExcluir = $state(false);
|
||||
|
||||
// Filtros de período
|
||||
const hoje = new Date();
|
||||
const trintaDiasAtras = new Date(Date.now() - 30 * 24 * 60 * 60 * 1000);
|
||||
let dataInicioFiltro = $state(trintaDiasAtras.toISOString().split('T')[0]!);
|
||||
let dataFimFiltro = $state(hoje.toISOString().split('T')[0]!);
|
||||
|
||||
// Monitorar mudanças em funcionarioSelecionado
|
||||
$effect(() => {
|
||||
console.log('🔄 [DEBUG] funcionarioSelecionado mudou:', funcionarioSelecionado, typeof funcionarioSelecionado);
|
||||
@@ -116,8 +122,8 @@
|
||||
}
|
||||
return {
|
||||
funcionarioId: funcionarioSelecionado as Id<'funcionarios'>,
|
||||
dataInicio: new Date(Date.now() - 30 * 24 * 60 * 60 * 1000).toISOString().split('T')[0]!,
|
||||
dataFim: new Date().toISOString().split('T')[0]!,
|
||||
dataInicio: dataInicioFiltro,
|
||||
dataFim: dataFimFiltro,
|
||||
};
|
||||
});
|
||||
|
||||
@@ -364,6 +370,11 @@
|
||||
<div class="card bg-base-100 shadow-xl mb-6">
|
||||
<div class="card-body">
|
||||
<h2 class="card-title mb-4">Selecionar Funcionário</h2>
|
||||
<div class="grid grid-cols-1 md:grid-cols-3 gap-4">
|
||||
<div class="form-control">
|
||||
<label class="label">
|
||||
<span class="label-text font-medium">Funcionário</span>
|
||||
</label>
|
||||
<select
|
||||
class="select select-bordered w-full"
|
||||
bind:value={funcionarioSelecionado}
|
||||
@@ -377,6 +388,32 @@
|
||||
{/each}
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-control">
|
||||
<label class="label">
|
||||
<span class="label-text font-medium">Data Início</span>
|
||||
</label>
|
||||
<input
|
||||
type="date"
|
||||
class="input input-bordered w-full"
|
||||
bind:value={dataInicioFiltro}
|
||||
disabled={modoEdicao}
|
||||
max={dataFimFiltro}
|
||||
/>
|
||||
</div>
|
||||
<div class="form-control">
|
||||
<label class="label">
|
||||
<span class="label-text font-medium">Data Fim</span>
|
||||
</label>
|
||||
<input
|
||||
type="date"
|
||||
class="input input-bordered w-full"
|
||||
bind:value={dataFimFiltro}
|
||||
disabled={modoEdicao}
|
||||
min={dataInicioFiltro}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Formulário Unificado de Edição e Ajuste -->
|
||||
|
||||
Reference in New Issue
Block a user