IO-2820 State Tax & Adjustment to Bottom Line
Signed-off-by: Allan Carr <allan.carr@thinkimex.com>
This commit is contained in:
@@ -747,7 +747,9 @@ function CalculateTaxesTotals(job, otherTotals) {
|
|||||||
MAPA: Dinero(),
|
MAPA: Dinero(),
|
||||||
MASH: Dinero(),
|
MASH: Dinero(),
|
||||||
TOW: Dinero(),
|
TOW: Dinero(),
|
||||||
STOR: Dinero()
|
STOR: Dinero(),
|
||||||
|
|
||||||
|
ADJ: Dinero()
|
||||||
};
|
};
|
||||||
|
|
||||||
//For each line, determine if it's taxable, and if it is, add the line amount to the taxable amounts total.
|
//For each line, determine if it's taxable, and if it is, add the line amount to the taxable amounts total.
|
||||||
@@ -816,6 +818,8 @@ function CalculateTaxesTotals(job, otherTotals) {
|
|||||||
amount: Math.round(stlStorage.t_amt * 100)
|
amount: Math.round(stlStorage.t_amt * 100)
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (job.adjustment_bottom_line) taxableAmounts.ADJ = Dinero({ amount: Math.round(job.adjustment_bottom_line * 100) });
|
||||||
|
|
||||||
const pfp = job.parts_tax_rates;
|
const pfp = job.parts_tax_rates;
|
||||||
|
|
||||||
//For any profile level markups/discounts, add them in now as well.
|
//For any profile level markups/discounts, add them in now as well.
|
||||||
@@ -903,12 +907,26 @@ function CalculateTaxesTotals(job, otherTotals) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else if (key === "ADJ") {
|
||||||
|
for (let tyCounter = 1; tyCounter <= 5; tyCounter++) {
|
||||||
|
if (IsTrueOrYes(pfp.PAT ? pfp.PAT[`prt_tx_in${tyCounter}`] : pfp.PAN[`prt_tx_in${tyCounter}`])) {
|
||||||
|
//This amount is taxable for this type.
|
||||||
|
taxableAmountsByTier[`ty${tyCounter}Tax`] = taxableAmountsByTier[`ty${tyCounter}Tax`].add(
|
||||||
|
taxableAmounts[key]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("Key with issue", key);
|
console.error("Key with issue", key);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Object.keys(taxableAmountsByTier).forEach((taxTierKey) => {
|
||||||
|
if (taxableAmountsByTier[taxTierKey].lessThan(Dinero({ amount: 0 }))) {
|
||||||
|
taxableAmountsByTier[taxTierKey] = Dinero({ amount: 0 });
|
||||||
|
}
|
||||||
|
});
|
||||||
const remainingTaxableAmounts = taxableAmountsByTier;
|
const remainingTaxableAmounts = taxableAmountsByTier;
|
||||||
console.log("*** Taxable Amounts by Tier***");
|
console.log("*** Taxable Amounts by Tier***");
|
||||||
console.table(JSON.parse(JSON.stringify(taxableAmountsByTier)));
|
console.table(JSON.parse(JSON.stringify(taxableAmountsByTier)));
|
||||||
|
|||||||
Reference in New Issue
Block a user