IO-2696 Incorrect job totals showing per instance.

This commit is contained in:
Patrick Fic
2024-03-19 09:42:07 -07:00
parent 214e29d292
commit 2ea3a10c8b
2 changed files with 127 additions and 104 deletions

View File

@@ -6,6 +6,7 @@ import {useTranslation} from "react-i18next";
import {connect} from "react-redux"; import {connect} from "react-redux";
import {createStructuredSelector} from "reselect"; import {createStructuredSelector} from "reselect";
import {selectBodyshop} from "../../redux/user/user.selectors"; import {selectBodyshop} from "../../redux/user/user.selectors";
import InstanceRenderManager from '../../utils/instanceRenderMgr';
const mapStateToProps = createStructuredSelector({ const mapStateToProps = createStructuredSelector({
//currentUser: selectCurrentUser //currentUser: selectCurrentUser
@@ -29,108 +30,130 @@ export function JobTotalsTableTotals({bodyshop, job}) {
total: job.job_totals.totals.subtotal, total: job.job_totals.totals.subtotal,
bold: true, bold: true,
}, },
...InstanceRenderManager({imex: [ {
...(job.job_totals.totals.us_sales_tax_breakdown key: t("jobs.labels.local_tax_amt"),
? [ total: job.job_totals.totals.local_tax,
{ },
key: `${ {
bodyshop.md_responsibility_centers.taxes.tax_ty1?.tax_type1 || key: t("jobs.labels.state_tax_amt"),
"T1" total: job.job_totals.totals.state_tax,
} - ${[ },
job.cieca_pft.ty1_rate1, ...(bodyshop.region_config === "CA_BC"
job.cieca_pft.ty1_rate2, ? [
job.cieca_pft.ty1_rate3, {
job.cieca_pft.ty1_rate4, key: t("jobs.fields.ca_bc_pvrt"),
job.cieca_pft.ty1_rate5, total: job.job_totals.additional.pvrt,
] },
.filter((i) => i > 0) ]
.join(", ")}%`, : []),
total: job.job_totals.totals.us_sales_tax_breakdown.ty1Tax, {
}, key: t("jobs.labels.federal_tax_amt"),
{ total: job.job_totals.totals.federal_tax,
key: `${ },],
bodyshop.md_responsibility_centers.taxes.tax_ty2?.tax_type2 || promanager: "USE_ROME",
"T2" rome: [(job.job_totals.totals.us_sales_tax_breakdown
} - ${[ ? [
job.cieca_pft.ty2_rate1, {
job.cieca_pft.ty2_rate2, key: `${
job.cieca_pft.ty2_rate3, bodyshop.md_responsibility_centers.taxes.tax_ty1?.tax_type1 ||
job.cieca_pft.ty2_rate4, "T1"
job.cieca_pft.ty2_rate5, } - ${[
] job.cieca_pft.ty1_rate1,
.filter((i) => i > 0) job.cieca_pft.ty1_rate2,
.join(", ")}%`, job.cieca_pft.ty1_rate3,
total: job.job_totals.totals.us_sales_tax_breakdown.ty2Tax, job.cieca_pft.ty1_rate4,
}, job.cieca_pft.ty1_rate5,
{ ]
key: `${ .filter((i) => i > 0)
bodyshop.md_responsibility_centers.taxes.tax_ty3?.tax_type3 || .join(", ")}%`,
"T3" total: job.job_totals.totals.us_sales_tax_breakdown.ty1Tax,
} - ${[ },
job.cieca_pft.ty3_rate1, {
job.cieca_pft.ty3_rate2, key: `${
job.cieca_pft.ty3_rate3, bodyshop.md_responsibility_centers.taxes.tax_ty2?.tax_type2 ||
job.cieca_pft.ty3_rate4, "T2"
job.cieca_pft.ty3_rate5, } - ${[
] job.cieca_pft.ty2_rate1,
.filter((i) => i > 0) job.cieca_pft.ty2_rate2,
.join(", ")}%`, job.cieca_pft.ty2_rate3,
total: job.job_totals.totals.us_sales_tax_breakdown.ty3Tax, job.cieca_pft.ty2_rate4,
}, job.cieca_pft.ty2_rate5,
{ ]
key: `${ .filter((i) => i > 0)
bodyshop.md_responsibility_centers.taxes.tax_ty4?.tax_type4 || .join(", ")}%`,
"T4" total: job.job_totals.totals.us_sales_tax_breakdown.ty2Tax,
} - ${[ },
job.cieca_pft.ty4_rate1, {
job.cieca_pft.ty4_rate2, key: `${
job.cieca_pft.ty4_rate3, bodyshop.md_responsibility_centers.taxes.tax_ty3?.tax_type3 ||
job.cieca_pft.ty4_rate4, "T3"
job.cieca_pft.ty4_rate5, } - ${[
] job.cieca_pft.ty3_rate1,
.filter((i) => i > 0) job.cieca_pft.ty3_rate2,
.join(", ")}%`, job.cieca_pft.ty3_rate3,
total: job.job_totals.totals.us_sales_tax_breakdown.ty4Tax, job.cieca_pft.ty3_rate4,
}, job.cieca_pft.ty3_rate5,
{ ]
key: `${ .filter((i) => i > 0)
bodyshop.md_responsibility_centers.taxes.tax_ty5?.tax_type5 || .join(", ")}%`,
"TT" total: job.job_totals.totals.us_sales_tax_breakdown.ty3Tax,
} - ${[ },
job.cieca_pft.ty5_rate1, {
job.cieca_pft.ty5_rate2, key: `${
job.cieca_pft.ty5_rate3, bodyshop.md_responsibility_centers.taxes.tax_ty4?.tax_type4 ||
job.cieca_pft.ty5_rate4, "T4"
job.cieca_pft.ty5_rate5, } - ${[
] job.cieca_pft.ty4_rate1,
.filter((i) => i > 0) job.cieca_pft.ty4_rate2,
.join(", ")}%`, job.cieca_pft.ty4_rate3,
total: job.job_totals.totals.us_sales_tax_breakdown.ty5Tax, job.cieca_pft.ty4_rate4,
}, job.cieca_pft.ty4_rate5,
{ ]
key: t("jobs.labels.total_sales_tax"), .filter((i) => i > 0)
bold: true, .join(", ")}%`,
total: Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty1Tax) total: job.job_totals.totals.us_sales_tax_breakdown.ty4Tax,
.add( },
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty2Tax) {
) key: `${
.add( bodyshop.md_responsibility_centers.taxes.tax_ty5?.tax_type5 ||
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty3Tax) "TT"
) } - ${[
.add( job.cieca_pft.ty5_rate1,
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty4Tax) job.cieca_pft.ty5_rate2,
) job.cieca_pft.ty5_rate3,
.add( job.cieca_pft.ty5_rate4,
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty5Tax) job.cieca_pft.ty5_rate5,
).toJSON(), ]
}, .filter((i) => i > 0)
].filter((item) => item.total.amount !== 0) .join(", ")}%`,
: [ total: job.job_totals.totals.us_sales_tax_breakdown.ty5Tax,
{ },
key: t("jobs.labels.state_tax_amt"), {
total: job.job_totals.totals.state_tax, key: t("jobs.labels.total_sales_tax"),
}, bold: true,
]), total: Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty1Tax)
.add(
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty2Tax)
)
.add(
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty3Tax)
)
.add(
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty4Tax)
)
.add(
Dinero(job.job_totals.totals.us_sales_tax_breakdown.ty5Tax)
).toJSON(),
},
].filter((item) => item.total.amount !== 0)
: [
{
key: t("jobs.labels.state_tax_amt"),
total: job.job_totals.totals.state_tax,
},
])]
}),
{ {
key: t("jobs.labels.total_repairs"), key: t("jobs.labels.total_repairs"),

View File

@@ -749,7 +749,7 @@
"refuelcharge": "Refuel Charge (per liter/gallon)", "refuelcharge": "Refuel Charge (per liter/gallon)",
"scheduledreturn": "Scheduled Return", "scheduledreturn": "Scheduled Return",
"start": "Contract Start", "start": "Contract Start",
"statetax": "State Taxes", "statetax": "Provincial/State Taxes",
"status": "Status" "status": "Status"
}, },
"labels": { "labels": {
@@ -2001,7 +2001,7 @@
"savebeforeconversion": "You have unsaved changes on the Job. Please save them before converting it. ", "savebeforeconversion": "You have unsaved changes on the Job. Please save them before converting it. ",
"scheduledinchange": "The scheduled in is based off the latest appointment. To change this date, please schedule or reschedule the Job. ", "scheduledinchange": "The scheduled in is based off the latest appointment. To change this date, please schedule or reschedule the Job. ",
"specialcoveragepolicy": "Special Coverage Policy Applies", "specialcoveragepolicy": "Special Coverage Policy Applies",
"state_tax_amt": "State Taxes", "state_tax_amt": "Provincial/State Taxes",
"subletstotal": "Sublets Total", "subletstotal": "Sublets Total",
"subtotal": "Subtotal", "subtotal": "Subtotal",
"supplementnote": "The Job had a supplement imported.", "supplementnote": "The Job had a supplement imported.",