From 56cb1934605bf78201a373e1e7c59bfba1b3048a Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Tue, 19 Jan 2021 08:22:09 -0800 Subject: [PATCH] Resolve allocations disappearing after save. IO-577 --- .../jobs-close-lines.component.jsx | 6 +- .../jobs-close-totals.component.jsx | 56 ----- .../labor-allocations-table.component.jsx | 2 +- .../shop-info.orderstatus.component.jsx | 205 +++++------------- .../pages/jobs-close/jobs-close.component.jsx | 18 +- 5 files changed, 66 insertions(+), 221 deletions(-) delete mode 100644 client/src/components/jobs-close-totals/jobs-close-totals.component.jsx diff --git a/client/src/components/jobs-close-lines/jobs-close-lines.component.jsx b/client/src/components/jobs-close-lines/jobs-close-lines.component.jsx index 702b0a028..fe6844503 100644 --- a/client/src/components/jobs-close-lines/jobs-close-lines.component.jsx +++ b/client/src/components/jobs-close-lines/jobs-close-lines.component.jsx @@ -16,7 +16,7 @@ const mapDispatchToProps = (dispatch) => ({ //setUserLanguage: language => dispatch(setUserLanguage(language)) }); -export function JobsCloseLines({ bodyshop, joblines }) { +export function JobsCloseLines({ bodyshop, job }) { const { t } = useTranslation(); return (
@@ -105,7 +105,7 @@ export function JobsCloseLines({ bodyshop, joblines }) { name={[field.name, "profitcenter_part"]} rules={[ { - required: !!joblines[index].act_price, + required: !!job.joblines[index].act_price, message: t("general.validation.required"), }, ]} @@ -137,7 +137,7 @@ export function JobsCloseLines({ bodyshop, joblines }) { name={[field.name, "profitcenter_labor"]} rules={[ { - required: !!joblines[index].mod_lbr_ty, + required: !!job.joblines[index].mod_lbr_ty, message: t("general.validation.required"), }, ]} diff --git a/client/src/components/jobs-close-totals/jobs-close-totals.component.jsx b/client/src/components/jobs-close-totals/jobs-close-totals.component.jsx deleted file mode 100644 index 280ca291a..000000000 --- a/client/src/components/jobs-close-totals/jobs-close-totals.component.jsx +++ /dev/null @@ -1,56 +0,0 @@ -import { Descriptions, Statistic } from "antd"; -import React from "react"; -import { useTranslation } from "react-i18next"; -import Dinero from "dinero.js"; - -export default function JobsCloseTotals({ jobTotals }) { - const { t } = useTranslation(); - return ( -
- ------Should be removed----- - - - - - - - - - - - - - - - - - - - - - - -
- ); -} diff --git a/client/src/components/labor-allocations-table/labor-allocations-table.component.jsx b/client/src/components/labor-allocations-table/labor-allocations-table.component.jsx index 127ad163a..f5e5747b2 100644 --- a/client/src/components/labor-allocations-table/labor-allocations-table.component.jsx +++ b/client/src/components/labor-allocations-table/labor-allocations-table.component.jsx @@ -34,7 +34,7 @@ export function LaborAllocationsTable({ ) ); }, [joblines, timetickets, bodyshop, adjustments]); - + console.log("Rerender on the allocations table."); return (
diff --git a/client/src/components/shop-info/shop-info.orderstatus.component.jsx b/client/src/components/shop-info/shop-info.orderstatus.component.jsx index 8d7ca831c..6d9e46b03 100644 --- a/client/src/components/shop-info/shop-info.orderstatus.component.jsx +++ b/client/src/components/shop-info/shop-info.orderstatus.component.jsx @@ -1,161 +1,64 @@ -import { DeleteFilled } from "@ant-design/icons"; -import { Button, Form, Input, Select, Row, Col } from "antd"; -import React, { useState } from "react"; +import { Form, Input } from "antd"; +import React from "react"; import { useTranslation } from "react-i18next"; -import FormListMoveArrows from "../form-list-move-arrows/form-list-move-arrows.component"; - +import LayoutFormRow from "../layout-form-row/layout-form-row.component"; export default function ShopInfoOrderStatusComponent({ form }) { const { t } = useTranslation(); - const [options, setOptions] = useState( - form.getFieldValue(["md_order_statuses", "statuses"]) || [] - ); - - const handleBlur = () => { - setOptions(form.getFieldValue(["md_order_statuses", "statuses"])); - }; - return (
{t("bodyshop.labels.orderstatuses")} - - - - {(fields, { add, remove, move }) => { - return ( -
- {fields.map((field, index) => ( - -
- - - - { - remove(field.name); - }} - /> - -
-
- ))} - - - -
- ); - }} -
- - - - - - - - - - - - - - - - - - -
+ + + + + + + + + + + + + + +
); } diff --git a/client/src/pages/jobs-close/jobs-close.component.jsx b/client/src/pages/jobs-close/jobs-close.component.jsx index 3850307e7..e4dcfabfd 100644 --- a/client/src/pages/jobs-close/jobs-close.component.jsx +++ b/client/src/pages/jobs-close/jobs-close.component.jsx @@ -1,19 +1,18 @@ -import { Button, Form, Space, notification, Popconfirm } from "antd"; +import { Button, Form, notification, Popconfirm, Space } from "antd"; import React, { useState } from "react"; +import { useApolloClient, useMutation } from "react-apollo"; import { useTranslation } from "react-i18next"; import { connect } from "react-redux"; +import { useHistory } from "react-router-dom"; import { createStructuredSelector } from "reselect"; import FormsFieldChanged from "../../components/form-fields-changed-alert/form-fields-changed-alert.component"; import JobsScoreboardAdd from "../../components/job-scoreboard-add-button/job-scoreboard-add-button.component"; import JobsCloseAutoAllocate from "../../components/jobs-close-auto-allocate/jobs-close-auto-allocate.component"; import JobsCloseExportButton from "../../components/jobs-close-export-button/jobs-close-export-button.component"; import JobsCloseLines from "../../components/jobs-close-lines/jobs-close-lines.component"; -import JobsCloseTotals from "../../components/jobs-close-totals/jobs-close-totals.component"; -import { selectBodyshop } from "../../redux/user/user.selectors"; -import { useApolloClient, useMutation } from "react-apollo"; import { generateJobLinesUpdatesForInvoicing } from "../../graphql/jobs-lines.queries"; import { UPDATE_JOB } from "../../graphql/jobs.queries"; -import { useHistory } from "react-router-dom"; +import { selectBodyshop } from "../../redux/user/user.selectors"; const mapStateToProps = createStructuredSelector({ bodyshop: selectBodyshop, }); @@ -36,7 +35,7 @@ export function JobsCloseComponent({ job, bodyshop }) { }); if (!!!result.errors) { notification["success"]({ message: t("job.successes.saved") }); - form.resetFields(); + // form.resetFields(); } else { notification["error"]({ message: t("job.errors.saving", { @@ -44,8 +43,8 @@ export function JobsCloseComponent({ job, bodyshop }) { }), }); } - form.resetFields(); - form.resetFields(); + // form.resetFields(); + // form.resetFields(); setLoading(false); }; @@ -109,8 +108,7 @@ export function JobsCloseComponent({ job, bodyshop }) { - - +
);