[MVPTN-86] feat(form) : Ajustado seletct Categoria e Serviço Caixa

This commit is contained in:
Kenio 2025-10-20 09:13:00 -03:00
parent 56bca3ba41
commit 2810abecf5

View file

@ -37,7 +37,6 @@ import {
import {
Table,
TableBody,
TableCaption,
TableCell,
TableHead,
TableHeader,
@ -52,6 +51,7 @@ import { useGEmolumentoItemReadHook } from "@/app/(protected)/(cadastros)/cadast
import { GEmolumentoItemReadInterface } from "@/app/(protected)/(cadastros)/cadastros/_interfaces/GEmolumentoItemReadInterface";
import CategoriaServicoSelect from "@/shared/components/categoriaServicoSelect/CategoriaServicoSelect";
import CCaixaServicoSelect from "@/packages/administrativo/components/CCaixaServico/CCaixaServicoSelect";
import { TServicoTipoSaveData } from "../../_data/TServicoTipo/TServicoTipoSaveData";
// Propriedades esperadas pelo componente
interface Props {
@ -172,6 +172,35 @@ const form = useForm<TServicoTipoFormValues>({
}
}, [data, form]);
// Função chamada ao clicar em "Salvar"
const handleSave = async (formData: TServicoTipoFormValues) => {
try {
// Envia os dados para API
const response = await TServicoTipoSaveData(formData);
// Se a resposta contiver um ID válido
if (response?.data?.servico_tipo_id) {
const novoId = response.data.servico_tipo_id;
// Atualiza o hidden input no formulário
form.setValue("servico_tipo_id", novoId);
// Atualiza todos os campos do formulário com o retorno da API
form.reset(response.data);
// Exibe mensagem de sucesso
console.log(`Serviço salvo com sucesso (ID: ${novoId})`);
} else {
console.log("Erro ao salvar o tipo de serviço.");
}
} catch (error) {
console.log("Erro ao salvar:", error);
}
};
return (
<Dialog
open={isOpen}
@ -188,7 +217,7 @@ const form = useForm<TServicoTipoFormValues>({
{/* Estrutura do formulário */}
<Form {...form}>
<form onSubmit={form.handleSubmit(onSave)} className="space-y-6">
<form onSubmit={form.handleSubmit(handleSave)} className="space-y-6">
<Tabs defaultValue="dadosTipoServico" className="space-y-4">