Added manual parts queue action IO-542

This commit is contained in:
Patrick Fic
2021-02-02 21:06:01 -08:00
parent 4f17d235f4
commit d48b87d599
5 changed files with 76 additions and 1 deletions

View File

@@ -7,7 +7,7 @@ import { connect } from "react-redux";
import { Link, useHistory } from "react-router-dom";
import { createStructuredSelector } from "reselect";
import { logImEXEvent } from "../../firebase/firebase.utils";
import { DELETE_JOB } from "../../graphql/jobs.queries";
import { DELETE_JOB, UPDATE_JOB } from "../../graphql/jobs.queries";
import { selectJobReadOnly } from "../../redux/application/application.selectors";
import { setModalContext } from "../../redux/modals/modals.actions";
import { selectBodyshop } from "../../redux/user/user.selectors";
@@ -44,6 +44,7 @@ export function JobsDetailHeaderActions({
const client = useApolloClient();
const history = useHistory();
const [deleteJob] = useMutation(DELETE_JOB);
const [updateJob] = useMutation(UPDATE_JOB);
const jobInProduction = useMemo(() => {
return bodyshop.md_ro_statuses.production_statuses.includes(job.status);
}, [job, bodyshop.md_ro_statuses.production_statuses]);
@@ -213,6 +214,32 @@ export function JobsDetailHeaderActions({
>
{t("jobs.actions.postbills")}
</Menu.Item>
<Menu.Item
key="addtopartsqueue"
disabled={!job.converted || !jobInProduction || jobRO}
onClick={async () => {
const result = await updateJob({
variables: {
jobId: job.id,
job: { queued_for_parts: true },
},
});
if (!!!result.errors) {
notification["success"]({
message: t("jobs.successes.partsqueue"),
});
} else {
notification["error"]({
message: t("jobs.errors.saving", {
error: JSON.stringify(result.errors),
}),
});
}
}}
>
{t("jobs.actions.addtopartsqueue")}
</Menu.Item>
<Menu.Item
disabled={!!job.date_invoiced || !jobInPostProduction || jobRO}
key="closejob"