From 288e5e4c020563ef4bd1acdaa1d683cd094c8031 Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Thu, 25 Jun 2020 14:30:57 -0700 Subject: [PATCH] Troubleshooting unsaved changes indicator BOD-172 --- .../form-fields-changed-alert.component.jsx | 8 ++- .../jobs-detail.page.component.jsx | 56 ++++++++++++------- 2 files changed, 43 insertions(+), 21 deletions(-) diff --git a/client/src/components/form-fields-changed-alert/form-fields-changed-alert.component.jsx b/client/src/components/form-fields-changed-alert/form-fields-changed-alert.component.jsx index 524f41da8..61eeae16e 100644 --- a/client/src/components/form-fields-changed-alert/form-fields-changed-alert.component.jsx +++ b/client/src/components/form-fields-changed-alert/form-fields-changed-alert.component.jsx @@ -6,14 +6,17 @@ import { Prompt, useLocation } from "react-router-dom"; export default function FormsFieldChanged({ form }) { const { t } = useTranslation(); + const handleReset = () => { form.resetFields(); }; + const loc = useLocation(); return ( {() => { + console.log("Render", form.isFieldsTouched()); if (form.isFieldsTouched()) return (
@@ -26,7 +29,7 @@ export default function FormsFieldChanged({ form }) { }} /> {t("general.messages.unsavedchanges")} @@ -35,7 +38,8 @@ export default function FormsFieldChanged({ form }) { style={{ cursor: "pointer", textDecoration: "underline", - }}> + }} + > {t("general.actions.reset")}
diff --git a/client/src/pages/jobs-detail/jobs-detail.page.component.jsx b/client/src/pages/jobs-detail/jobs-detail.page.component.jsx index 6908dc753..227fb89d8 100644 --- a/client/src/pages/jobs-detail/jobs-detail.page.component.jsx +++ b/client/src/pages/jobs-detail/jobs-detail.page.component.jsx @@ -101,9 +101,10 @@ export function JobsDetailPage({ // size: "small", }; - const handleFinish = (values) => { + const handleFinish = async (values) => { const newTotals = CalculateJob({ ...job, ...values }, bodyshop.shoprates); - mutationUpdateJob({ + + const result = await mutationUpdateJob({ variables: { jobId: job.id, job: { @@ -113,30 +114,36 @@ export function JobsDetailPage({ job_totals: JSON.stringify(newTotals), }, }, - }).then((r) => { + }); + + if (!!!result.errors) { notification["success"]({ message: t("jobs.successes.savetitle"), }); - refetch().then((r) => form.resetFields()); - }); + await refetch(); + form.resetFields(); + form.resetFields(); + } }; return ( }> + fallback={} + >
+ }} + > history.push({ search: `?tab=${key}` })}> + onChange={(key) => history.push({ search: `?tab=${key}` })} + > @@ -156,7 +164,8 @@ export function JobsDetailPage({ {t("menus.jobsdetail.claimdetail")} } - key='claimdetail'> + key="claimdetail" + > } - key='insurance'> + key="insurance" + > } - key='repairdata'> + key="repairdata" + > } - key='financials'> + key="financials" + > } - key='partssublet'> + key="partssublet" + > } - key='labor'> + key="labor" + > } - key='dates'> + key="dates" + > } - key='documents'> + key="documents" + > } - key='notes'> + key="notes" + > @@ -247,7 +264,8 @@ export function JobsDetailPage({ {t("jobs.labels.audit")} } - key='audit'> + key="audit" + >