Skip to content

Commit

Permalink
Merge pull request #300 from djnunez-aot/update-request-updates
Browse files Browse the repository at this point in the history
Notes added to CR & MP Form - Both Entity and Staff Side
  • Loading branch information
djnunez-aot authored Feb 20, 2025
2 parents 06af5c8 + 98f33a6 commit 6d084ab
Show file tree
Hide file tree
Showing 10 changed files with 90 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,20 @@ export default function FormFieldSection({
/>
</ControlledRadioGroup>
</Grid>
<Grid item xs={12} sx={{ mb: BCDesignTokens.layoutMarginMedium }}>
<Typography variant="body1" sx={{ fontWeight: 700 }}>
Notes/Comments
</Typography>
<ControlledTextField
fullWidth
multiline
minRows={4}
name="notes"
sx={{
mb: 0,
}}
/>
</Grid>
</Grid>
</>
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,39 +58,40 @@ export const ConsultationRecordProponentView = () => {
?.parties_required_to_be_consulted?.split(",") || [];

const formSubmission = submissionItem?.submissions?.find(
(submission) => submission.type === SUBMISSION_TYPE.FORM,
(submission) => submission.type === SUBMISSION_TYPE.FORM
);
const defaultFormValues = useMemo(() => {
if (!formSubmission?.submitted_form?.submission_json) return {};

return {
...formSubmission.submitted_form.submission_json,
allPartiesConsulted: booleanToString(
formSubmission.submitted_form.submission_json.allPartiesConsulted,
formSubmission.submitted_form.submission_json.allPartiesConsulted
),
planWasReviewed: booleanToString(
formSubmission.submitted_form.submission_json.planWasReviewed,
formSubmission.submitted_form.submission_json.planWasReviewed
),
writtenExplanationsProvidedToParties: booleanToString(
formSubmission.submitted_form.submission_json
.writtenExplanationsProvidedToParties,
.writtenExplanationsProvidedToParties
),
writtenExplanationsProvidedToCommenters: booleanToString(
formSubmission.submitted_form.submission_json
.writtenExplanationsProvidedToCommenters,
.writtenExplanationsProvidedToCommenters
),
notes: formSubmission.submitted_form.submission_json.notes,
};
}, [formSubmission]);

const documentSubmissions = submissionItem?.submissions?.filter(
(submission) => submission.type === SUBMISSION_TYPE.DOCUMENT,
(submission) => submission.type === SUBMISSION_TYPE.DOCUMENT
);
const defaultDocumentValues = useMemo(() => {
if (!documentSubmissions) return {};

return {
consultationRecords: documentSubmissions.map(
(submission) => submission.submitted_document.url,
(submission) => submission.submitted_document.url
),
};
}, [documentSubmissions]);
Expand Down Expand Up @@ -136,14 +137,15 @@ export const ConsultationRecordProponentView = () => {

const saveSubmission = async (
formData: ConsultationRecordForm,
status: SubmissionItemStatus,
status: SubmissionItemStatus
) => {
const {
consultedParties,
allPartiesConsulted,
planWasReviewed,
writtenExplanationsProvidedToParties,
writtenExplanationsProvidedToCommenters,
notes,
} = formData;
callSaveSubmission({
data: {
Expand All @@ -155,11 +157,12 @@ export const ConsultationRecordProponentView = () => {
allPartiesConsulted: stringToBoolean(allPartiesConsulted),
planWasReviewed: stringToBoolean(planWasReviewed),
writtenExplanationsProvidedToParties: stringToBoolean(
writtenExplanationsProvidedToParties,
writtenExplanationsProvidedToParties
),
writtenExplanationsProvidedToCommenters: stringToBoolean(
writtenExplanationsProvidedToCommenters,
writtenExplanationsProvidedToCommenters
),
notes,
},
},
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import {
Grid,
RadioGroup,
Switch,
TextField,
Typography,
} from "@mui/material";
import { BCDesignTokens } from "epic.theme";
Expand Down Expand Up @@ -149,6 +150,21 @@ export default function FormFieldSection({
<YesNoRadioOptions disabled error={false} />
</RadioGroup>
</Grid>
<Grid item xs={12} sx={{ mb: BCDesignTokens.layoutMarginMedium }}>
<Typography variant="body1" sx={{ fontWeight: 700 }}>
Notes/Comments
</Typography>
<TextField
fullWidth
multiline
minRows={4}
disabled
value={mergedFormData.notes}
sx={{
mb: 0,
}}
/>
</Grid>
</When>
</Grid>
</>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ export const ConsultationRecordStaffView = () => {
});

const formSubmission = submissionItem?.submissions?.find(
(submission) => submission.type === SUBMISSION_TYPE.FORM,
(submission) => submission.type === SUBMISSION_TYPE.FORM
);

const formData = useMemo(() => {
Expand All @@ -43,13 +43,13 @@ export const ConsultationRecordStaffView = () => {
formSubmission.submitted_form.submission_json.allPartiesConsulted,
planWasReviewed:
formSubmission.submitted_form.submission_json.planWasReviewed,

writtenExplanationsProvidedToParties:
formSubmission.submitted_form.submission_json
.writtenExplanationsProvidedToParties,
writtenExplanationsProvidedToCommenters:
formSubmission.submitted_form.submission_json
.writtenExplanationsProvidedToCommenters,
notes: formSubmission.submitted_form.submission_json.notes,
};
}, [formSubmission]);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export const consultationRecordSchema = yup.object().shape({
.of(yup.string())
.required("Please upload at least one document.")
.min(1, "Please upload at least one document."),
notes: yup.string().nullable(),
});

export type ConsultationRecordForm = yup.InferType<
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ export const ContactInformationEntityView = () => {
const navigate = useNavigate();

const formSubmission = submissionItem?.submissions.find(
(submission) => submission.type === SUBMISSION_TYPE.FORM,
(submission) => submission.type === SUBMISSION_TYPE.FORM
);
const defaultValues = useMemo(() => {
if (!formSubmission?.submitted_form?.submission_json) return {};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { Divider, Grid, Typography } from "@mui/material";
import { BCDesignTokens } from "epic.theme";
import { ManagementPlanSubmissionForm } from "../ManagementPlanStaffView";
import { FieldErrors } from "react-hook-form";
import ControlledTextField from "@/components/Shared/controlled/ControlledTextField";

interface FormFieldSectionProps {
errors: FieldErrors<ManagementPlanSubmissionForm>; // Replace FormValues with your actual form schema interface
Expand Down Expand Up @@ -64,6 +65,20 @@ export default function FormFieldSection({ errors }: FormFieldSectionProps) {
<YesNoRadioOptions error={Boolean(errors["informationAccurate"])} />
</ControlledRadioGroup>
</Grid>
<Grid item xs={12} sx={{ mb: BCDesignTokens.layoutMarginMedium }}>
<Typography variant="body1" sx={{ fontWeight: 700 }}>
Notes/Comments
</Typography>
<ControlledTextField
fullWidth
multiline
minRows={4}
name="notes"
sx={{
mb: 0,
}}
/>
</Grid>
</>
);
}
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ const managementPlanSubmissionSchema = yup.object().shape({
.required("Please upload at least one document.")
.min(1, "Please upload at least one document."),
supportingDocuments: yup.array().of(yup.string()),
notes: yup.string(),
});

type ManagementPlanSubmissionForm = yup.InferType<
Expand Down Expand Up @@ -85,6 +86,7 @@ export const ManagementPlanSubmissionProponentView = () => {
informationAccurate: booleanToString(
formSubmission.submitted_form.submission_json.informationAccurate
),
notes: formSubmission.submitted_form.submission_json.notes,
};
}, [formSubmission]);

Expand Down Expand Up @@ -164,6 +166,7 @@ export const ManagementPlanSubmissionProponentView = () => {
allRequirementsAddressed,
requirementsClear,
informationAccurate,
notes,
} = formData;
callSaveSubmission({
data: {
Expand All @@ -175,6 +178,7 @@ export const ManagementPlanSubmissionProponentView = () => {
allRequirementsAddressed: stringToBoolean(allRequirementsAddressed),
requirementsClear: stringToBoolean(requirementsClear),
informationAccurate: stringToBoolean(informationAccurate),
notes,
},
},
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import {
Grid,
RadioGroup,
Switch,
TextField,
Typography,
} from "@mui/material";
import { BCDesignTokens } from "epic.theme";
Expand All @@ -17,6 +18,7 @@ const defaultFormData = {
allRequirementsAddressed: "",
requirementsClear: "",
informationAccurate: "",
notes: "",
};

interface FormFieldSectionProps {
Expand Down Expand Up @@ -103,6 +105,21 @@ export default function FormFieldSection({ formData }: FormFieldSectionProps) {
<YesNoRadioOptions disabled error={false} />
</RadioGroup>
</Grid>
<Grid item xs={12} sx={{ mb: BCDesignTokens.layoutMarginMedium }}>
<Typography variant="body1" sx={{ fontWeight: 700 }}>
Notes/Comments
</Typography>
<TextField
fullWidth
multiline
disabled
minRows={4}
value={mergedFormData.notes}
sx={{
mb: 0,
}}
/>
</Grid>
</When>
</Grid>
</>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ const managementPlanSubmissionSchema = yup.object().shape({
.required("Please upload at least one document.")
.min(1, "Please upload at least one document."),
supportingDocuments: yup.array().of(yup.string()),
notes: yup.string(),
});

export type ManagementPlanSubmissionForm = yup.InferType<
Expand All @@ -45,7 +46,7 @@ export const ManagementPlanSubmissionStaffView = () => {
});

const formSubmission = submissionItem?.submissions?.find(
(submission) => submission.type === SUBMISSION_TYPE.FORM,
(submission) => submission.type === SUBMISSION_TYPE.FORM
);

const formData = useMemo(() => {
Expand All @@ -54,17 +55,18 @@ export const ManagementPlanSubmissionStaffView = () => {
return {
...formSubmission.submitted_form.submission_json,
conditionSatisfied: booleanToString(
formSubmission.submitted_form.submission_json.conditionSatisfied,
formSubmission.submitted_form.submission_json.conditionSatisfied
),
allRequirementsAddressed: booleanToString(
formSubmission.submitted_form.submission_json.allRequirementsAddressed,
formSubmission.submitted_form.submission_json.allRequirementsAddressed
),
requirementsClear: booleanToString(
formSubmission.submitted_form.submission_json.requirementsClear,
formSubmission.submitted_form.submission_json.requirementsClear
),
informationAccurate: booleanToString(
formSubmission.submitted_form.submission_json.informationAccurate,
formSubmission.submitted_form.submission_json.informationAccurate
),
notes: formSubmission.submitted_form.submission_json?.notes,
};
}, [formSubmission]);

Expand Down

0 comments on commit 6d084ab

Please sign in to comment.