From 8d9507dce1c895b5b3b26d629bbc57f41946422b Mon Sep 17 00:00:00 2001 From: Patrick Fic <> Date: Tue, 24 Aug 2021 16:32:05 -0700 Subject: [PATCH] IO-539 Resolve tax import for SGI. --- .../jobs-available-table.container.jsx | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/client/src/components/jobs-available-table/jobs-available-table.container.jsx b/client/src/components/jobs-available-table/jobs-available-table.container.jsx index 5eef71012..8115e112d 100644 --- a/client/src/components/jobs-available-table/jobs-available-table.container.jsx +++ b/client/src/components/jobs-available-table/jobs-available-table.container.jsx @@ -97,6 +97,24 @@ export function JobsAvailableContainer({ }); return; } + //IO-539 Check for Parts Rate on PAL for SGI use case. + + if ( + estData.est_data.parts_tax_rates && + estData.est_data.parts_tax_rates.PAL && + (estData.est_data.parts_tax_rates.PAL.prt_tax_rt === null || + estData.est_data.parts_tax_rates.PAL.prt_tax_rt === 0) + ) { + console.log("checking"); + const res = await confirmDialog( + `ImEX Online has detected that there is a missing tax rate for used parts. Pressing OK will set the tax rate to ${bodyshop.bill_tax_rates.state_tax_rate}%.` + ); + if (res) { + estData.est_data.parts_tax_rates.PAL.prt_tax_rt = + bodyshop.bill_tax_rates.state_tax_rate / 100; + estData.est_data.parts_tax_rates.PAL.prt_tax_in = true; + } + } const newTotals = ( await Axios.post("/job/totals", { @@ -196,6 +214,24 @@ export function JobsAvailableContainer({ message: t("jobs.errors.creating", { error: "No job data present." }), }); } else { + //IO-539 Check for Parts Rate on PAL for SGI use case. + if ( + estData.est_data.parts_tax_rates && + estData.est_data.parts_tax_rates.PAL && + (estData.est_data.parts_tax_rates.PAL.prt_tax_rt === null || + estData.est_data.parts_tax_rates.PAL.prt_tax_rt === 0) + ) { + console.log("checking"); + const res = await confirmDialog( + `ImEX Online has detected that there is a missing tax rate for used parts. Pressing OK will set the tax rate to ${bodyshop.bill_tax_rates.state_tax_rate}%.` + ); + if (res) { + estData.est_data.parts_tax_rates.PAL.prt_tax_rt = + bodyshop.bill_tax_rates.state_tax_rate / 100; + estData.est_data.parts_tax_rates.PAL.prt_tax_in = true; + } + } + //create upsert job let supp = replaceEmpty({ ...estData.est_data }); @@ -388,3 +424,11 @@ function replaceEmpty(someObj, replaceValue = null) { console.log("Parsed", JSON.parse(temp)); return JSON.parse(temp); } + +function confirmDialog(msg) { + return new Promise(function (resolve, reject) { + let confirmed = window.confirm(msg); + + return confirmed ? resolve(true) : reject(false); + }); +}