diff --git a/.env b/.env index 77602a0..7c3a28b 100644 --- a/.env +++ b/.env @@ -1,2 +1,2 @@ -REACT_APP_API_PATH=http://localhost:3000/ -# REACT_APP_API_PATH=https://br-ipti-beneficiarios.azurewebsites.net/ \ No newline at end of file +# REACT_APP_API_PATH=http://localhost:3000/ +REACT_APP_API_PATH=https://br-ipti-beneficiarios.azurewebsites.net/ \ No newline at end of file diff --git a/src/Assets/css/styles.css b/src/Assets/css/styles.css index f5556cd..8a0cc68 100644 --- a/src/Assets/css/styles.css +++ b/src/Assets/css/styles.css @@ -122,7 +122,7 @@ .card { box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px; - padding: 2rem; + padding: 1rem; border-radius: 10px; margin-bottom: 1rem; } diff --git a/src/Assets/images/calendar.svg b/src/Assets/images/calendar.svg new file mode 100644 index 0000000..68b323c --- /dev/null +++ b/src/Assets/images/calendar.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/Assets/images/meeting_card.svg b/src/Assets/images/meeting_card.svg new file mode 100644 index 0000000..5eb475b --- /dev/null +++ b/src/Assets/images/meeting_card.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/Assets/images/published_with_changes.svg b/src/Assets/images/published_with_changes.svg new file mode 100644 index 0000000..0348ef6 --- /dev/null +++ b/src/Assets/images/published_with_changes.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/Components/Card/CardMeeting/index.tsx b/src/Components/Card/CardMeeting/index.tsx index 6ccd52d..a03a196 100644 --- a/src/Components/Card/CardMeeting/index.tsx +++ b/src/Components/Card/CardMeeting/index.tsx @@ -2,12 +2,20 @@ import { useNavigate, useParams } from "react-router-dom"; import { Container } from "./style"; import { Column, Padding, Row } from "../../../Styles/styles"; import Icon from "../../Icon"; -import { formatarData, Status } from "../../../Controller/controllerGlobal"; -import { Message } from "primereact/message"; +import { + formatarData, + ROLE, + Status, +} from "../../../Controller/controllerGlobal"; import { useContext, useState } from "react"; import { MeetingListContext } from "../../../Context/Classroom/Meeting/MeetingList/context"; import { MeetingListTypes } from "../../../Context/Classroom/Meeting/MeetingList/type"; import { ConfirmDialog } from "primereact/confirmdialog"; +import { AplicationContext } from "../../../Context/Aplication/context"; +import { PropsAplicationContext } from "../../../Types/types"; +import IconMeeting from "./../../../Assets/images/meeting_card.svg"; +import IconCalendar from "./../../../Assets/images/calendar.svg"; +import IconStatus from "./../../../Assets/images/published_with_changes.svg"; const CardMeeting = ({ title, @@ -23,6 +31,10 @@ const CardMeeting = ({ const history = useNavigate(); const [visible, setVisible] = useState(false); + const propsAplication = useContext( + AplicationContext + ) as PropsAplicationContext; + const { id } = useParams(); const props = useContext(MeetingListContext) as MeetingListTypes; @@ -34,16 +46,27 @@ const CardMeeting = ({ onClick={() => history(`/turma/${id}/encontros/${idMeeting}`)} > -

{title}

-
{ - e.stopPropagation(); - setVisible(true); - }} - > - -
+ +
+ +
+ + +

{title}

+
+
+ {(propsAplication.user?.role === ROLE.ADMIN || + propsAplication.user?.role === ROLE.COORDINATORS) && ( +
{ + e.stopPropagation(); + setVisible(true); + }} + > + +
+ )}
@@ -51,21 +74,33 @@ const CardMeeting = ({
-

Data:

- {formatarData(data)} + +

Data: {formatarData(data)}

- - {status === Status.PENDING ? ( - - ) : status === Status.APPROVED ? ( - - ) : status === Status.REPROVED ? ( - - ) : null} - + + + + Status: {" "} + {status === Status.PENDING ? ( +

Pendente

+ ) : status === Status.APPROVED ? ( +

Aprovado

+ ) : status === Status.REPROVED ? ( +

Reprovado

+ ) : null} +
+
{ project: undefined, status: "", classroom: 0, + deficiency_description: "" }; return { initialValue, diff --git a/src/Context/Beneficiaries/BeneficiaresCreate/type.ts b/src/Context/Beneficiaries/BeneficiaresCreate/type.ts index 5fc8c3a..e47d87c 100644 --- a/src/Context/Beneficiaries/BeneficiaresCreate/type.ts +++ b/src/Context/Beneficiaries/BeneficiaresCreate/type.ts @@ -15,7 +15,8 @@ export interface BeneficiariesCreateType { status: string; classroom: number; zone: number | undefined, - project: number | undefined + project: number | undefined, + deficiency_description: string | undefined }; tsOne: Tsone | undefined; project: any | undefined; diff --git a/src/Context/Beneficiaries/BeneficiaresEdit/state.tsx b/src/Context/Beneficiaries/BeneficiaresEdit/state.tsx index 79d663e..c6f7566 100644 --- a/src/Context/Beneficiaries/BeneficiaresEdit/state.tsx +++ b/src/Context/Beneficiaries/BeneficiaresEdit/state.tsx @@ -64,6 +64,8 @@ export const BeneficiariesEditState = () => { responsable_cpf: registrations?.responsable_cpf, responsable_telephone: registrations?.responsable_telephone, status: getStatus(registrations?.status!), + deficiency_description: registrations?.deficiency_description + }; const CreateRegisterClassroom = (data: CreateRegistrationClassroomType) => { diff --git a/src/Context/Classroom/Registration/state.tsx b/src/Context/Classroom/Registration/state.tsx index 2d1c5e5..8662077 100644 --- a/src/Context/Classroom/Registration/state.tsx +++ b/src/Context/Classroom/Registration/state.tsx @@ -36,6 +36,8 @@ export const RegistrationClassroomState = () => { responsable_cpf: registration?.registration.responsable_cpf, responsable_telephone: registration?.registration.responsable_telephone, status: getStatus(registration?.status!), + deficiency_description: registration?.registration.deficiency_description + }; const handleUpdateRegistration = (data: UpdateRegister, id: number) => { diff --git a/src/Context/Classroom/Registration/type.tsx b/src/Context/Classroom/Registration/type.tsx index 4a3e17a..d3c3553 100644 --- a/src/Context/Classroom/Registration/type.tsx +++ b/src/Context/Classroom/Registration/type.tsx @@ -28,6 +28,7 @@ export interface UpdateRegister responsable_telephone: string | undefined; status: {id: string, name: string} | undefined; registration_classroom_id?: number + deficiency_description: any } export interface RegistrationType { id: number diff --git a/src/Pages/Beneficiaries/BeneficiariesCreate/index.tsx b/src/Pages/Beneficiaries/BeneficiariesCreate/index.tsx index 35183ce..f1cd9e0 100644 --- a/src/Pages/Beneficiaries/BeneficiariesCreate/index.tsx +++ b/src/Pages/Beneficiaries/BeneficiariesCreate/index.tsx @@ -45,9 +45,7 @@ const RegistrationPage = () => { } return true; }), - responsable_telephone: Yup.string().required( - "Telefone é obrigatório" - ), + responsable_telephone: Yup.string().required("Telefone é obrigatório"), birthday: Yup.string() .nullable() .required("Data de nascimento é obrigatória"), @@ -196,36 +194,48 @@ const RegistrationPage = () => { ) : null} -
+ {values.deficiency && (
- + - - - - - - - {errors.zone && touched.zone ? ( -
- {errors.zone} -
- ) : null} +
-
+ )} {" "} +
+
+ + + + + + + + + {errors.zone && touched.zone ? ( +
+ {errors.zone} +
+ ) : null} +
+

Dados Responsavel

@@ -292,7 +302,10 @@ const RegistrationPage = () => { value={props.project} placerholder="Selecione o projeto" name="project" - onChange={(e) => {props.setProject(e.target.value); setFieldValue("project", e.target.value)}} + onChange={(e) => { + props.setProject(e.target.value); + setFieldValue("project", e.target.value); + }} options={props.tsOne?.project} optionsLabel="name" optionsValue="id" diff --git a/src/Pages/Beneficiaries/BeneficiariesEdit/index.tsx b/src/Pages/Beneficiaries/BeneficiariesEdit/index.tsx index caf1500..716e1f7 100644 --- a/src/Pages/Beneficiaries/BeneficiariesEdit/index.tsx +++ b/src/Pages/Beneficiaries/BeneficiariesEdit/index.tsx @@ -9,211 +9,222 @@ import MaskInput from "../../../Components/InputMask"; import Loading from "../../../Components/Loading"; import TextInput from "../../../Components/TextInput"; import BeneficiariesEditProvider, { - BeneficiariesEditContext, + BeneficiariesEditContext, } from "../../../Context/Beneficiaries/BeneficiaresEdit/context"; import { BeneficiariesEditType } from "../../../Context/Beneficiaries/BeneficiaresEdit/type"; import { - color_race, - getStatus, - typesex + color_race, + getStatus, + typesex, } from "../../../Controller/controllerGlobal"; import color from "../../../Styles/colors"; import { Container, Padding, Row } from "../../../Styles/styles"; import ModalCreateRegisterClassroom from "./ModalCreateRegisterClassroom"; const BeneficiariesEdit = () => { - return ( - - - - ); + return ( + + + + ); }; const BeneficiariesEditPage = () => { - const props = useContext(BeneficiariesEditContext) as BeneficiariesEditType; - const [visible, setVisible] = useState(); + const props = useContext(BeneficiariesEditContext) as BeneficiariesEditType; + const [visible, setVisible] = useState(); - const [visibleDelete, setVisibleDelete] = useState(); + const [visibleDelete, setVisibleDelete] = useState(); - if (props.isLoading) return ; + if (props.isLoading) return ; - const renderHeader = () => { - return ( -
-
- ); - }; - - const StatusBody = (rowData: any) => { - return
{getStatus(rowData?.status)?.name}
; - }; + const renderHeader = () => { + return ( +
+
+ ); + }; - const ActionBeneficiariesBody = (rowData: any) => { - return ( - - {/*