diff --git a/functions/src/controller/report/fetchForConsultation.ts b/functions/src/controller/report/fetchForConsultation.ts
index a42dea4..b2aa42a 100644
--- a/functions/src/controller/report/fetchForConsultation.ts
+++ b/functions/src/controller/report/fetchForConsultation.ts
@@ -7,6 +7,7 @@ interface StudentReport {
school: string | undefined;
classroom: string | undefined;
student_name: string;
+ birthday: string;
points: number;
}
@@ -26,6 +27,7 @@ const generateRowReport = async (schools: SchoolData[], classrooms: ClassroomDat
school: school?.object.name,
classroom: classroom?.object.name,
student_name: student.object.name,
+ birthday: student.object.birthday,
points: student.object.points,
};
diff --git a/src/Pdf/PdfForConsultation/relatorioEncaminhadosConsulta.js b/src/Pdf/PdfForConsultation/relatorioEncaminhadosConsulta.js
index 0fc6d0f..492e052 100644
--- a/src/Pdf/PdfForConsultation/relatorioEncaminhadosConsulta.js
+++ b/src/Pdf/PdfForConsultation/relatorioEncaminhadosConsulta.js
@@ -95,6 +95,7 @@ const MyDocument = () => {
Nome da escola
Turma
Nome do Estudante
+ Data de Nascimento
Prioridade
@@ -107,6 +108,7 @@ const MyDocument = () => {
+
) : (
// Renderizar os dados do relatório
@@ -116,6 +118,7 @@ const MyDocument = () => {
{item.school}
{item.classroom}
{item.student_name}
+ {item.birthday}
{item.points < 5 ? "Prioridade minima" : (item.points >= 5 && item.points < 9) ? "Prioridade média" : item.points >= 10 ? "Prioridade máxima" : ""}
))
diff --git a/src/Pdf/PdfProntuarioMedico/prontuarioMedico.js b/src/Pdf/PdfProntuarioMedico/prontuarioMedico.js
index 48c9fb8..532f2e4 100644
--- a/src/Pdf/PdfProntuarioMedico/prontuarioMedico.js
+++ b/src/Pdf/PdfProntuarioMedico/prontuarioMedico.js
@@ -1,363 +1,543 @@
-import { SaveAlt } from '@material-ui/icons';
-import html2canvas from 'html2canvas';
-import jsPDF from 'jspdf';
-import React, { useEffect, useRef, useState } from 'react';
+import { SaveAlt } from "@material-ui/icons";
+import html2canvas from "html2canvas";
+import jsPDF from "jspdf";
+import React, { useEffect, useRef, useState } from "react";
import { useParams } from "react-router-dom";
import logo from "../../assets/images/logo.svg";
-import fetchOneRegistration from '../../controller/registration/fetchOneRegistration';
-import { Column, Padding, Row } from '../../styles/style';
-import { Table, TableData, TableHeader, TableWrapper } from '../style';
-import './style.css';
+import fetchOneRegistration from "../../controller/registration/fetchOneRegistration";
+import { Column, Padding, Row } from "../../styles/style";
+import { Table, TableData, TableHeader, TableWrapper } from "../style";
+import "./style.css";
const MyDocument = () => {
+ const contentRef = useRef(null);
+ const { idRegistration } = useParams();
+ const [students, setStudents] = useState();
+
+ const generatePDF = () => {
+ if (!contentRef.current) return;
+
+ const elementToCapture = contentRef.current;
+
+ html2canvas(elementToCapture).then((canvas) => {
+ const pdf = new jsPDF("p", "mm", "a4");
+
+ const margin = 10;
+ const pageWidth = 210; // Largura da página A4 em mm
+
+ const imgWidth = pageWidth - 2 * margin;
+ const imgHeight = (canvas.height * imgWidth) / canvas.width;
+
+ const imgData = canvas.toDataURL("image/png");
+
+ // Adiciona a imagem com 1 cm de margem em todos os lados
+ pdf.addImage(imgData, "PNG", margin, margin, imgWidth, imgHeight);
+
+ pdf.save(`ProntuarioMedico-${students.object.name}-Lupa.pdf`);
+ });
+ };
+
+ useEffect(() => {
+ fetchOneRegistration(idRegistration)
+ .then((testDataList) => {
+ setStudents(testDataList);
+ })
+ .catch((err) => {
+ // Trate erros, se ocorrerem
+ console.error(err);
+ });
+ }, [idRegistration]);
+
+ function formatarDataHora() {
+ const agora = new Date();
+ const dia = agora.getDate().toString().padStart(2, "0");
+ const mes = (agora.getMonth() + 1).toString().padStart(2, "0"); // Lembre-se de que os meses são baseados em zero
+ const ano = agora.getFullYear();
+ const hora = agora.getHours().toString().padStart(2, "0");
+ const minutos = agora.getMinutes().toString().padStart(2, "0");
+
+ return `${dia}/${mes}/${ano} - ${hora}:${minutos}h`;
+ }
+
+ return (
+
+
+
+
+
+
+ Gerar PDF
+
+
+
+
+
+
+
+
+
+
+ Nome: {students?.object.name}
+
+
+
+ Data de Nascimento: {students?.object.birthday}
+
+
+
+ Data da consulta: {students?.object.dataConsulta}
+
+
+
+ {" "}
+ CRM: {students?.object.crmMedico} Médico:{" "}
+ {students?.object.nomeMedico} Ass.:{" "}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Prontuário Médico
+
+
+
+
Escaneamento Visual pelo Spot Vision
+
+
+
+
+
+
+ Refração Esférico
+
+
+ Refração Cilíndrico
+
+
+ Refração Eixo
+
+
+ Refração Equivalente Esférico
+
+
+ Refração DP
+
+
+
+
+
+
+ Olho direito
+
+
+ {students?.object.refracaoEsfericoOlhoDireito}
+
+
+ {students?.object.refracaoCilindricoOlhoDireito}
+
+
+ {students?.object.refracaoEixoOlhoDireito}
+
+
+ {students?.object.refracaoEquivalenteEsfericoOlhoDireito}
+
+
+ {students?.object.refracaoDpOlhoDireito}
+
+
+
+
+ Olho esquerdo
+
+
+ {students?.object.refracaoEsfericoOlhoEsquerdo}
+
+
+ {students?.object.refracaoCilindricoOlhoEsquerdo}
+
+
+ {students?.object.refracaoEixoOlhoEsquerdo}
+
+
+ {students?.object.refracaoEquivalenteEsfericoOlhoEsquerdo}
+
+
+ {students?.object.refracaoDpOlhoEsquerdo}
+
+
+
+
+
+
+
+
+
+ Observações encontradas no Spot Vision:
+
+
+ {students?.object.observacoesSpotVision ? (
+ (() => {
+ const observacoes = students.object.observacoesSpotVision;
+ const fields = [
+ { key: "miopiaOd", label: "Miopia Olho Direito" },
+ { key: "miopiaOs", label: "Miopia Olho Esquerdo" },
+ {
+ key: "astigmatismoOd",
+ label: "Astigmatismo Olho Direito",
+ },
+ {
+ key: "astigmatismoOs",
+ label: "Astigmatismo Olho Esquerdo",
+ },
+ {
+ key: "hipermetropiaOd",
+ label: "Hipermetropia Olho Direito",
+ },
+ {
+ key: "hipermetropiaOs",
+ label: "Hipermetropia Olho Esquerdo",
+ },
+ { key: "estrabismoOd", label: "Estrabismo Olho Direito" },
+ {
+ key: "estrabismoOs",
+ label: "Estrabismo Olho Esquerdo",
+ },
+ { key: "anisometropia", label: "Anisometropia" },
+ { key: "anisocoria", label: "Anisocoria" },
+ ];
+ const trueObservations = fields
+ .filter((field) => observacoes[field.key])
+ .map((field) => field.label);
+
+ return trueObservations.length > 0 ? (
+
{trueObservations.join(", ")}
+ ) : (
+
Sem observações
+ );
+ })()
+ ) : (
+
Sem observações
+ )}
+
+
+
+
+ {students?.object.anamnese && (
+
+
Anamnese:
+
{students.object.anamnese}
+
+ )}
+
+
Refração Estática
+
+
+
+
+
+
+ Refração Estático Esférico
+
+
+ Refração Estático Cilíndrico
+
+
+ Refração Estático Eixo
+
+
+ Refração Estático Acuidade Visual
+
+
+
+
+
+
+ Olho direito
+
+
+ {students?.object.refracaoEstaticaEsfericoOlhoDireito}
+
+
+ {students?.object.refracaoEstaticaCilindricoOlhoDireito}
+
+
+ {students?.object.refracaoEstaticaEixoOlhoDireito}
+
+
+ {
+ students?.object
+ .refracaoEstaticaAcuidadeVisualOlhoDireito
+ }
+
+
+
+
+ Olho esquerdo
+
+
+ {students?.object.refracaoEstaticaEsfericoOlhoEsquerdo}
+
+
+ {students?.object.refracaoEstaticaCilindricoOlhoEsquerdo}
+
+
+ {students?.object.refracaoEstaticaEixoOlhoEsquerdo}
+
+
+ {
+ students?.object
+ .refracaoEstaticaAcuidadeVisualOlhoEsquerdo
+ }
+
+
+
+
+
+
+
Exame de Biomicroscopia
+
+
+
+
+
+
+ Olho direito
+
+
+ Olho esquerdo
+
+
+
+
+
+
+ {students?.object.biomicroscopiaOd}
+
+
+ {students?.object.biomicroscopiaOs}
+
+
+
+
+
+
+
Exame de Fundoscopia
+
+
+
+
+
+
+
+ Resultados
+
+
+
+
+
+
+ Motilidade Ocular
+
+
+ {students?.object.motilidadeOcular}
+
+
+
+
+ Diagnóstico
+
+
+ {students?.object.diagnostico}
+
+
+
+
+ Conduta
+
+
+ {students?.object.conduta}
+
+
+
+
+
+
+
+
+
+
+
+
+ Resultados
+
+
+
+
+
+
+ Olho direito
+
+
+ {students?.object.fundoscopiaOd}
+
+
+
+
+ Olho esquerdo
+
+
+ {students?.object.fundoscopiaOs}
+
+
+
+
+
+
- const contentRef = useRef(null);
- const { idRegistration } = useParams()
- const [students, setStudents] = useState()
-
- const generatePDF = () => {
- if (!contentRef.current) return;
-
- const elementToCapture = contentRef.current;
-
- html2canvas(elementToCapture).then((canvas) => {
- const pdf = new jsPDF('p', 'mm', 'a4');
-
- const margin = 10
- const pageWidth = 210; // Largura da página A4 em mm
-
- const imgWidth = pageWidth - 2 * margin;
- const imgHeight = (canvas.height * imgWidth) / canvas.width;
-
- const imgData = canvas.toDataURL('image/png');
-
- // Adiciona a imagem com 1 cm de margem em todos os lados
- pdf.addImage(imgData, 'PNG', margin, margin, imgWidth, imgHeight);
-
- pdf.save(`ProntuarioMedico-${students.object.name}-Lupa.pdf`);
- });
- };
-
- useEffect(() => {
- fetchOneRegistration(idRegistration)
- .then((testDataList) => {
- setStudents(testDataList)
- })
- .catch((err) => {
- // Trate erros, se ocorrerem
- console.error(err)
- })
- }, [idRegistration])
-
- function formatarDataHora() {
- const agora = new Date();
- const dia = agora.getDate().toString().padStart(2, '0');
- const mes = (agora.getMonth() + 1).toString().padStart(2, '0'); // Lembre-se de que os meses são baseados em zero
- const ano = agora.getFullYear();
- const hora = agora.getHours().toString().padStart(2, '0');
- const minutos = agora.getMinutes().toString().padStart(2, '0');
-
- return `${dia}/${mes}/${ano} - ${hora}:${minutos}h`;
- }
-
- return (
-
-
-
-
-
-
- Gerar PDF
-
-
-
-
-
-
-
-
- Nome: {students?.object.name}
-
- Data de Nascimento: {students?.object.birthday}
-
- Data da consulta: {students?.object.dataConsulta}
-
- CRM: {students?.object.crmMedico} Médico: {students?.object.nomeMedico} Ass.:
-
-
-
-
-
-
-
-
-
-
-
-
-
- Prontuário Médico
-
-
-
-
Escaneamento Visual pelo Spot Vision
-
-
-
-
-
- Refração Esférico
- Refração Cilíndrico
- Refração Eixo
- Refração Equivalente Esférico
- Refração DP
-
-
-
-
-
- Olho direito
- {students?.object.refracaoEsfericoOlhoDireito}
- {students?.object.refracaoCilindricoOlhoDireito}
- {students?.object.refracaoEixoOlhoDireito}
- {students?.object.refracaoEquivalenteEsfericoOlhoDireito}
- {students?.object.refracaoDpOlhoDireito}
-
-
- Olho esquerdo
- {students?.object.refracaoEsfericoOlhoEsquerdo}
- {students?.object.refracaoCilindricoOlhoEsquerdo}
- {students?.object.refracaoEixoOlhoEsquerdo}
- {students?.object.refracaoEquivalenteEsfericoOlhoEsquerdo}
- {students?.object.refracaoDpOlhoEsquerdo}
-
-
-
-
-
-
-
- Observações encontradas no Spot Vision:
-
- {students?.object.observacoesSpotVision ? (
- (() => {
- const observacoes = students.object.observacoesSpotVision;
- const fields = [
- { key: 'miopiaOd', label: 'Miopia Olho Direito' },
- { key: 'miopiaOs', label: 'Miopia Olho Esquerdo' },
- { key: 'astigmatismoOd', label: 'Astigmatismo Olho Direito' },
- { key: 'astigmatismoOs', label: 'Astigmatismo Olho Esquerdo' },
- { key: 'hipermetropiaOd', label: 'Hipermetropia Olho Direito' },
- { key: 'hipermetropiaOs', label: 'Hipermetropia Olho Esquerdo' },
- { key: 'estrabismoOd', label: 'Estrabismo Olho Direito' },
- { key: 'estrabismoOs', label: 'Estrabismo Olho Esquerdo' },
- { key: 'anisometropia', label: 'Anisometropia' },
- { key: 'anisocoria', label: 'Anisocoria' }
- ];
- const trueObservations = fields
- .filter(field => observacoes[field.key])
- .map(field => field.label);
-
- return trueObservations.length > 0 ? (
-
{trueObservations.join(', ')}
- ) : (
-
Sem observações
- );
- })()
- ) : (
-
Sem observações
- )}
-
-
-
-
- {students?.object.anamnese && (
-
-
Anamnese:
-
{students.object.anamnese}
-
- )}
-
-
Refração Estática
-
-
-
-
-
- Refração Estático Esférico
- Refração Estático Cilíndrico
- Refração Estático Eixo
- Refração Estático Acuidade Visual
-
-
-
-
-
- Olho direito
- {students?.object.refracaoEstaticaEsfericoOlhoDireito}
- {students?.object.refracaoEstaticaCilindricoOlhoDireito}
- {students?.object.refracaoEstaticaEixoOlhoDireito}
- {students?.object.refracaoEstaticaAcuidadeVisualOlhoDireito}
-
-
-
- Olho esquerdo
- {students?.object.refracaoEstaticaEsfericoOlhoEsquerdo}
- {students?.object.refracaoEstaticaCilindricoOlhoEsquerdo}
- {students?.object.refracaoEstaticaEixoOlhoEsquerdo}
- {students?.object.refracaoEstaticaAcuidadeVisualOlhoEsquerdo}
-
-
-
-
-
-
Exame de Biomicroscopia
-
-
-
-
-
-
- Olho direito
- Olho esquerdo
-
-
-
-
- {students?.object.biomicroscopiaOd}
- {students?.object.biomicroscopiaOs}
-
-
-
-
-
-
-
-
Exame de Fundoscopia
-
-
-
-
-
-
-
- Resultados
-
-
-
-
- Motilidade Ocular
- {students?.object.motilidadeOcular}
-
-
- Diagnóstico
- {students?.object.diagnostico}
-
-
- Conduta
- {students?.object.conduta}
-
-
-
-
-
-
-
-
-
-
-
- Resultados
-
-
-
-
- Olho direito
- {students?.object.fundoscopiaOd}
-
-
- Olho esquerdo
- {students?.object.fundoscopiaOs}
-
-
-
-
-
-
-
-
-
Precisa de óculos:
-
{students?.object.precisaOculos ? 'SIM' : 'NÃO'}
-
-
-
-
-
- Justificativa para acompanhamento:
-
- {students?.object.acompanhamento ? (
- (() => {
- const acompanhamento = students.object.acompanhamento;
- const fields = [
- { key: 'ambliopia', label: 'Ambliopia' },
- { key: 'retinoblastoma', label: 'Retinoblastoma' },
- { key: 'catarataCongenita', label: 'Catarata Congênita' },
- { key: 'obstrucaoViasLacrimais', label: 'Obstrução de Vias Lacrimais' },
- { key: 'estrabismo', label: 'Estrabismo' },
- { key: 'glaucomaCongenito', label: 'Glaucoma Congênito' },
- { key: 'uveites', label: 'Uveítes' },
- { key: 'nistagmo', label: 'Nistagmo' },
- { key: 'miopiaProgressiva', label: 'Miopia Progressiva' },
- { key: 'ectasiasCornea', label: 'Ectasias da Córnea' },
- { key: 'alergiasConjuntivitesCalazio', label: 'Alergias, Conjuntivites e Calázio' },
- { key: 'baixaVisaoCentral', label: 'Baixa Visão Central' }
- ];
-
- const trueObservations = fields
- .filter(field => acompanhamento[field.key])
- .map(field => field.label);
-
- return trueObservations.length > 0 ? (
-
{trueObservations.join(', ')}
- ) : (
-
Não descrita
- );
- })()
- ) : (
-
Não descrita
- )}
-
-
-
-
-
Indicação para próxima consulta: {students?.object.proximaConsulta}
-
-
-
- {students?.object.observationConsulta && (
-
-
Observações:
-
{students?.object.observationConsulta}
-
- )}
-
-
-
+
+
+ Precisa de óculos:
+
+
{students?.object.precisaOculos}
+
- Consulta realizada por um profissional da saúde. Data de emissão: {formatarDataHora()}
-
+
+
+
+
+ Justificativa para acompanhamento:
+
+
+ {students?.object.acompanhamento ? (
+ (() => {
+ const acompanhamento = students.object.acompanhamento;
+ const fields = [
+ { key: "ambliopia", label: "Ambliopia" },
+ { key: "retinoblastoma", label: "Retinoblastoma" },
+ { key: "catarataCongenita", label: "Catarata Congênita" },
+ {
+ key: "obstrucaoViasLacrimais",
+ label: "Obstrução de Vias Lacrimais",
+ },
+ { key: "estrabismo", label: "Estrabismo" },
+ { key: "glaucomaCongenito", label: "Glaucoma Congênito" },
+ { key: "uveites", label: "Uveítes" },
+ { key: "nistagmo", label: "Nistagmo" },
+ { key: "miopiaProgressiva", label: "Miopia Progressiva" },
+ { key: "ectasiasCornea", label: "Ectasias da Córnea" },
+ {
+ key: "alergiasConjuntivitesCalazio",
+ label: "Alergias, Conjuntivites e Calázio",
+ },
+ {
+ key: "baixaVisaoCentral",
+ label: "Baixa Visão Central",
+ },
+ ];
+
+ const trueObservations = fields
+ .filter((field) => acompanhamento[field.key])
+ .map((field) => field.label);
+
+ return trueObservations.length > 0 ? (
+
{trueObservations.join(", ")}
+ ) : (
+
Não descrita
+ );
+ })()
+ ) : (
+
Não descrita
+ )}
+
+
+
+
+
Indicação para próxima consulta: {" "}
+
{students?.object.proximaConsulta}
-
- )
-}
-export default MyDocument
\ No newline at end of file
+ {students?.object.observationConsulta && (
+
+
+ Observações:
+
+
+ {students?.object.observationConsulta}
+
+
+ )}
+
+
+
+ {" "}
+ Consulta realizada por um profissional da saúde. Data de emissão:{" "}
+ {formatarDataHora()}
+
+
+
+
+ );
+};
+export default MyDocument;
diff --git a/src/context/Classroom/FormOphthalmological/state.js b/src/context/Classroom/FormOphthalmological/state.js
index 8b1a38a..1d32ba6 100644
--- a/src/context/Classroom/FormOphthalmological/state.js
+++ b/src/context/Classroom/FormOphthalmological/state.js
@@ -147,6 +147,15 @@ const FormRegistrationState = () => {
proximaConsulta: oneRegistration?.object.proximaConsulta ?? "",
observationConsulta: oneRegistration?.object.observationConsulta ?? "",
+ receitaAntigaEsfericoOlhoDireito: oneRegistration?.object.receitaEsfericoOlhoDireito ?? "",
+ receitaAntigaCilindricoOlhoDireito: oneRegistration?.object.receitaCilindricoOlhoDireito ?? "",
+ receitaAntigaEixoOlhoDireito: oneRegistration?.object.receitaEixoOlhoDireito ?? "",
+ receitaAntigaDpOlhoDireito: oneRegistration?.object.receitaDpOlhoDireito ?? "",
+ receitaAntigaEsfericoOlhoEsquerdo: oneRegistration?.object.receitaEsfericoOlhoEsquerdo ?? "",
+ receitaAntigaCilindricoOlhoEsquerdo: oneRegistration?.object.receitaCilindricoOlhoEsquerdo ?? "",
+ receitaAntigaEixoOlhoEsquerdo: oneRegistration?.object.receitaEixoOlhoEsquerdo ?? "",
+ receitaAntigaDpOlhoEsquerdo: oneRegistration?.object.receitaDpOlhoEsquerdo ?? "",
+
receitaEsfericoOlhoDireito: oneRegistration?.object.receitaEsfericoOlhoDireito ?? "",
receitaCilindricoOlhoDireito: oneRegistration?.object.receitaCilindricoOlhoDireito ?? "",
receitaEixoOlhoDireito: oneRegistration?.object.receitaEixoOlhoDireito ?? "",
@@ -163,6 +172,7 @@ const FormRegistrationState = () => {
receitaOculosCompleted: oneRegistration?.object.receitaCompleted ?? false,
entregaOculosCompleted: oneRegistration?.object.entregaOculosCompleted ?? false,
questionarioPaisCompleted: oneRegistration?.object.questionarioPaisCompleted ?? false,
+ permission: oneRegistration?.object.permission ?? false,
};
diff --git a/src/screens/Classroom/CreateRegistration.js b/src/screens/Classroom/CreateRegistration.js
index d4ef151..9b9300e 100644
--- a/src/screens/Classroom/CreateRegistration.js
+++ b/src/screens/Classroom/CreateRegistration.js
@@ -1,6 +1,17 @@
-import { Checkbox, FormControl, FormControlLabel, FormGroup, FormHelperText, FormLabel, Grid, Radio, RadioGroup, TextField } from "@material-ui/core";
+import {
+ Checkbox,
+ FormControl,
+ FormControlLabel,
+ FormGroup,
+ FormHelperText,
+ FormLabel,
+ Grid,
+ Radio,
+ RadioGroup,
+ TextField,
+} from "@material-ui/core";
import { Form, Formik } from "formik";
-import React from "react"
+import React from "react";
import * as Yup from "yup";
import MaskCpf from "../../components/Mask/maskcpf";
import Select from "react-select";
@@ -18,624 +29,961 @@ import handleSubmitStudent from "../../controller/registration/createRegistratio
const useStyles = makeStyles(styles);
const PurpleRadio = withStyles({
- root: {
- "&$checked": {
- color: styleBase.colors.colorsBaseProductNormal
- }
+ root: {
+ "&$checked": {
+ color: styleBase.colors.colorsBaseProductNormal,
},
- checked: {}
-})(props =>
);
+ },
+ checked: {},
+})((props) =>
);
const customStyles = {
- control: base => ({
- ...base,
+ control: (base) => ({
+ ...base,
- height: "60px",
- minHeight: "60px",
- fontFamily: "Roboto, Helvetica, Arial, sans-serif",
- display: 'flex', flexDirection: 'row', justifyContent: "start"
- }),
- menu: base => ({
- ...base,
- width: '100%',
- fontFamily: "Roboto, Helvetica, Arial, sans-serif",
- })
+ height: "60px",
+ minHeight: "60px",
+ fontFamily: "Roboto, Helvetica, Arial, sans-serif",
+ display: "flex",
+ flexDirection: "row",
+ justifyContent: "start",
+ }),
+ menu: (base) => ({
+ ...base,
+ width: "100%",
+ fontFamily: "Roboto, Helvetica, Arial, sans-serif",
+ }),
};
const CreateRegistrationState = () => {
+ const { id } = useParams();
- const { id } = useParams();
-
-
-
- const turno = [
- {
- id: 1,
- name: "Manhã"
- },
- {
- id: 2,
- name: "Tarde"
- },
- {
- id: 3,
- name: "Noite"
- },
- {
- id: 4,
- name: "Integral"
- },
- ]
-
- const colorRace = [
- {
- id: 0,
- name: "Não declarado"
- },
- {
- id: 1,
- name: "Branca"
- },
- {
- id: 2,
- name: "Preta"
- },
- {
- id: 3,
- name: "Parda"
- },
- {
- id: 4,
- name: "Amarela"
- },
- {
- id: 5,
- name: "Indígena"
- },
- ]
-
+ const turno = [
+ {
+ id: 1,
+ name: "Manhã",
+ },
+ {
+ id: 2,
+ name: "Tarde",
+ },
+ {
+ id: 3,
+ name: "Noite",
+ },
+ {
+ id: 4,
+ name: "Integral",
+ },
+ ];
- const validationSchema = Yup.object().shape({
- name: Yup.string().required("Campo obrigatório!").min(10, 'minimo de 10 caracteres'),
- birthday: Yup.string().required("Campo obrigatório!"),
- sex: Yup.string().required("Campo obrigatório!"),
- cpf: Yup.string().required("Campo obrigatório!"),
- colorRace: Yup.string().required("Campo obrigatório!"),
- zone: Yup.string().required("Campo obrigatório!"),
- school_fk: Yup.string().required("Campo obrigatório!"),
- classroom_fk: Yup.string().required("Campo obrigatório!"),
- turno: Yup.string().required("Campo obrigatório!"),
- filhoOculos: Yup.string().required(),
- horasUsoAparelhosEletronicos: Yup.string().required(),
- horasAtividadesAoArLivre: Yup.string().required(),
- });
+ const colorRace = [
+ {
+ id: 0,
+ name: "Não declarado",
+ },
+ {
+ id: 1,
+ name: "Branca",
+ },
+ {
+ id: 2,
+ name: "Preta",
+ },
+ {
+ id: 3,
+ name: "Parda",
+ },
+ {
+ id: 4,
+ name: "Amarela",
+ },
+ {
+ id: 5,
+ name: "Indígena",
+ },
+ ];
+ const validationSchema = Yup.object().shape({
+ name: Yup.string()
+ .required("Campo obrigatório!")
+ .min(10, "minimo de 10 caracteres"),
+ birthday: Yup.string().required("Campo obrigatório!"),
+ sex: Yup.string().required("Campo obrigatório!"),
+ cpf: Yup.string().required("Campo obrigatório!"),
+ colorRace: Yup.string().required("Campo obrigatório!"),
+ zone: Yup.string().required("Campo obrigatório!"),
+ school_fk: Yup.string().required("Campo obrigatório!"),
+ classroom_fk: Yup.string().required("Campo obrigatório!"),
+ turno: Yup.string().required("Campo obrigatório!"),
+ filhoOculos: Yup.string().required(),
+ horasUsoAparelhosEletronicos: Yup.string().required(),
+ horasAtividadesAoArLivre: Yup.string().required(),
+ });
- const initialValues = {
- name: '',
- birthday: '',
- sex: "",
- cpf: "",
- colorRace: "",
- zone: "",
- school_fk: getIdSchool(),
- classroom_fk: id,
- turno: "",
- permission: true,
- filhossintomas: {
- dificuldadeQuadro: false,
- dificuldadeLivro: false,
- olhoTortoConstante: false,
- olhoTortoMomentos: false,
- rostoApertaOlhos: false,
- tremorOlhos: false,
- manchaBrancaPupila: false,
- nenhumaOpcao: false,
- },
- filhoOculos: '',
- doencasNosOlhos: {
- olhoPreguicoso: false,
- olhoTorto: false,
- catarataInfancia: false,
- glaucomaCongenito: false,
- tumorOlhos: false,
- ceratoconeTransplante: false,
- palpebraCaida: false,
- nenhumaOpcao: false,
- },
- doencas: {
- prematuridade: false,
- sindromeDown: false,
- paralisiaTumorCerebral: false,
- outrasSindromesGeneticas: false,
- diabetes: false,
- artriteArtrose: false,
- alergiasCorticoides: false,
- nenhumaOpcao: false,
- },
- doencasFamiliares: {
- miopiaAmbosPais: false,
- miopiaUmPai: false,
- hipermetropiaAstigmatismo: false,
- estrabismo: false,
- catarataGlaucoma: false,
- olhoPreguicoso: false,
- tumorOlho: false,
- nenhumaOpcao: false,
- },
- horasUsoAparelhosEletronicos: "",
- horasAtividadesAoArLivre: "",
- };
+ const initialValues = {
+ name: "",
+ birthday: "",
+ sex: "",
+ cpf: "",
+ colorRace: "",
+ zone: "",
+ school_fk: getIdSchool(),
+ classroom_fk: id,
+ turno: "",
+ permission: true,
+ filhossintomas: {
+ dificuldadeQuadro: false,
+ dificuldadeLivro: false,
+ olhoTortoConstante: false,
+ olhoTortoMomentos: false,
+ rostoApertaOlhos: false,
+ tremorOlhos: false,
+ manchaBrancaPupila: false,
+ nenhumaOpcao: false,
+ },
+ filhoOculos: "",
+ doencasNosOlhos: {
+ olhoPreguicoso: false,
+ olhoTorto: false,
+ catarataInfancia: false,
+ glaucomaCongenito: false,
+ tumorOlhos: false,
+ ceratoconeTransplante: false,
+ palpebraCaida: false,
+ nenhumaOpcao: false,
+ },
+ doencas: {
+ prematuridade: false,
+ sindromeDown: false,
+ paralisiaTumorCerebral: false,
+ outrasSindromesGeneticas: false,
+ diabetes: false,
+ artriteArtrose: false,
+ alergiasCorticoides: false,
+ nenhumaOpcao: false,
+ },
+ doencasFamiliares: {
+ miopiaAmbosPais: false,
+ miopiaUmPai: false,
+ hipermetropiaAstigmatismo: false,
+ estrabismo: false,
+ catarataGlaucoma: false,
+ olhoPreguicoso: false,
+ tumorOlho: false,
+ nenhumaOpcao: false,
+ },
+ horasUsoAparelhosEletronicos: "",
+ horasAtividadesAoArLivre: "",
+ };
- return {
- turno, colorRace, validationSchema, initialValues, id
- }
-}
+ return {
+ turno,
+ colorRace,
+ validationSchema,
+ initialValues,
+ id,
+ };
+};
const CreateRegistration = () => {
- const classes = useStyles();
- const history = useHistory()
+ const classes = useStyles();
+ const history = useHistory();
- const props = CreateRegistrationState();
- return (
-
-
Criar Aluno
-
{ handleSubmitStudent(values, history, `${"/turmas/" + props.id}`) }}
- validationSchema={props.validationSchema}
- validateOnChange={false}
- enableReinitialize
- >
- {({ errors, values, touched, handleChange, handleSubmit, setFieldValue }) => {
+ const props = CreateRegistrationState();
+ return (
+
+
Criar Aluno
+
{
+ handleSubmitStudent(values, history, `${"/turmas/" + props.id}`);
+ }}
+ validationSchema={props.validationSchema}
+ validateOnChange={false}
+ enableReinitialize
+ >
+ {({
+ errors,
+ values,
+ touched,
+ handleChange,
+ handleSubmit,
+ setFieldValue,
+ }) => {
+ const errorList = {
+ name: touched.name && errors.name,
+ birthday: touched.birthday && errors.birthday,
+ sex: touched.sex && errors.sex,
+ cpf: touched.cpf && errors.cpf,
+ school_fk: touched.school && errors.school,
+ classroom_fk: touched.classroom && errors.classroom,
+ turno: touched.turno && errors.turno,
+ colorRace: touched.colorRace && errors.colorRace,
+ filhoOculos: touched.filhoOculos && errors.filhoOculos,
+ horasUsoAparelhosEletronicos:
+ touched.horasUsoAparelhosEletronicos &&
+ errors.horasUsoAparelhosEletronicos,
+ horasAtividadesAoArLivre:
+ touched.horasAtividadesAoArLivre &&
+ errors.horasAtividadesAoArLivre,
+ };
- const errorList = {
- name: touched.name && errors.name,
- birthday: touched.birthday && errors.birthday,
- sex: touched.sex && errors.sex,
- cpf: touched.cpf && errors.cpf,
- school_fk: touched.school && errors.school,
- classroom_fk: touched.classroom && errors.classroom,
- turno: touched.turno && errors.turno,
- colorRace: touched.colorRace && errors.colorRace,
- filhoOculos: touched.filhoOculos && errors.filhoOculos,
- horasUsoAparelhosEletronicos: touched.horasUsoAparelhosEletronicos && errors.horasUsoAparelhosEletronicos,
- horasAtividadesAoArLivre: touched.horasAtividadesAoArLivre && errors.horasAtividadesAoArLivre
- };
+ return (
+
- );
- }}
-
-
- )
-}
+
+
+
+
+
+
+ );
+ }}
+
+
+ );
+};
-export default CreateRegistration
\ No newline at end of file
+export default CreateRegistration;
diff --git a/src/screens/Classroom/RegistrationConfirmed/FormConsulta/index.js b/src/screens/Classroom/RegistrationConfirmed/FormConsulta/index.js
index 1bbd5ac..fc995f1 100644
--- a/src/screens/Classroom/RegistrationConfirmed/FormConsulta/index.js
+++ b/src/screens/Classroom/RegistrationConfirmed/FormConsulta/index.js
@@ -20,7 +20,7 @@ import { useParams } from "react-router-dom";
import { FormHelperText } from "@material-ui/core";
const useStyles = makeStyles(styles);
-const FormConsulta = ({ values, handleChange, errors}) => {
+const FormConsulta = ({ values, handleChange, errors }) => {
const classes = useStyles();
const history = useHistory();
//TODO: Adicionar validação, formik e yup
@@ -41,6 +41,8 @@ const FormConsulta = ({ values, handleChange, errors}) => {
type="button"
/>
+
+
Consulta Oftalmológica
@@ -54,7 +56,9 @@ const FormConsulta = ({ values, handleChange, errors}) => {
error={errors.nomeMedico}
variant="outlined"
/>
- {errors.nomeMedico && {errors.nomeMedico} }
+ {errors.nomeMedico && (
+ {errors.nomeMedico}
+ )}
@@ -68,7 +72,9 @@ const FormConsulta = ({ values, handleChange, errors}) => {
error={errors.crmMedico}
variant="outlined"
/>
- {errors.crmMedico && {errors.crmMedico} }
+ {errors.crmMedico && (
+ {errors.crmMedico}
+ )}
@@ -90,33 +96,160 @@ const FormConsulta = ({ values, handleChange, errors}) => {
value={values.dataConsulta}
variant="outlined"
/>
- {errors.dataConsulta &&
{errors.dataConsulta} }
+ {errors.dataConsulta && (
+
{errors.dataConsulta}
+ )}
-
- {" "}
- Histórico de Consulta {" "}
-
-
-
- Já realizou alguma consulta oftalmológica na vida?
-
-
+
+ {" "}
+ Histórico de Consulta {" "}
+
+
+
+
+ Já realizou alguma consulta oftalmológica na vida?
+
+
- } value={"Sim"} label="Sim" />
- } value={"Não"} label="Não" />
-
- {errors.jaRealizouConsultaAntes && {errors.jaRealizouConsultaAntes} }
+ >
+ }
+ value={"Sim"}
+ label="Sim"
+ />
+ }
+ value={"Não"}
+ label="Não"
+ />
+
+ {errors.jaRealizouConsultaAntes && (
+ {errors.jaRealizouConsultaAntes}
+ )}
+
-
+ {values.filhoOculos === "1" && (
+
+
Receita do óculos anterior
+
Olho direito
+
+
+ Esférico
+
+
+
+
+
+ Cilíndrico
+
+
+
+
+
+ Eixo
+
+
+
+
+
+ DP
+
+
+
+
+
+
+
+
+
Olho esquerdo
+
+
+ Esférico
+
+
+
+
+
+ Cilíndrico
+
+
+
+
+
+ Eixo
+
+
+
+
+
+ DP
+
+
+
+
+
+
+ )}
+
+ Lembrar de trazer última receita oftalmológica para a consulta
+
+ )}
- >
- );
+