diff --git a/susconecta/components/forms/doctor-registration-form.tsx b/susconecta/components/forms/doctor-registration-form.tsx new file mode 100644 index 0000000..f875ea2 --- /dev/null +++ b/susconecta/components/forms/doctor-registration-form.tsx @@ -0,0 +1,157 @@ +"use client" + +import { useState } from "react" +import { Input } from "@/components/ui/input" +import { Button } from "@/components/ui/button" +import { Label } from "@/components/ui/label" +import { Card, CardContent, CardHeader } from "@/components/ui/card" + +export function DoctorRegistrationForm() { + const [formData, setFormData] = useState({ + nome: "", + crm: "", + especialidade: "", + email: "", + celular: "", + cpf: "", + dataNascimento: "", + cep: "", + logradouro: "", + numero: "", + bairro: "", + cidade: "", + estado: "", + observacoes: "", + }) + const [errors, setErrors] = useState({}) + + const handleInputChange = (field, value) => { + setFormData((prev) => ({ ...prev, [field]: value })) + } + + const validateForm = () => { + const newErrors = {} + if (!formData.nome.trim()) newErrors.nome = "Nome é obrigatório" + if (!formData.crm.trim()) newErrors.crm = "CRM é obrigatório" + if (!formData.especialidade.trim()) newErrors.especialidade = "Especialidade é obrigatória" + if (!formData.email.trim()) newErrors.email = "E-mail é obrigatório" + if (!formData.celular.trim()) newErrors.celular = "Celular é obrigatório" + if (!formData.cpf.trim()) newErrors.cpf = "CPF é obrigatório" + if (!formData.dataNascimento.trim()) newErrors.dataNascimento = "Data de nascimento é obrigatória" + if (!formData.cep.trim()) newErrors.cep = "CEP é obrigatório" + if (!formData.logradouro.trim()) newErrors.logradouro = "Logradouro é obrigatório" + if (!formData.numero.trim()) newErrors.numero = "Número é obrigatório" + if (!formData.bairro.trim()) newErrors.bairro = "Bairro é obrigatório" + if (!formData.cidade.trim()) newErrors.cidade = "Cidade é obrigatória" + if (!formData.estado.trim()) newErrors.estado = "Estado é obrigatório" + setErrors(newErrors) + return Object.keys(newErrors).length === 0 + } + + const handleSubmit = (e) => { + e.preventDefault() + if (!validateForm()) return + // Aqui você pode chamar a API para salvar o médico + alert("Médico cadastrado com sucesso!") + } + + return ( +
+ ) +} \ No newline at end of file diff --git a/susconecta/components/forms/patient-registration-form.tsx b/susconecta/components/forms/patient-registration-form.tsx index b40c0e4..e2b4791 100644 --- a/susconecta/components/forms/patient-registration-form.tsx +++ b/susconecta/components/forms/patient-registration-form.tsx @@ -519,7 +519,7 @@ export function PatientRegistrationForm({ {/* CPF e RG */}{errors.sexo}
}{errors.sexo}
}