Merge branch 'master-AIO' into feature/IO-3001-us-est-scrubbing
This commit is contained in:
@@ -19,7 +19,8 @@ async function JobCosting(req, res) {
|
||||
const BearerToken = req.BearerToken;
|
||||
const client = req.userGraphQLClient;
|
||||
|
||||
logger.log("job-costing-start", "DEBUG", req.user.email, jobid, null);
|
||||
//Uncomment for further testing
|
||||
// logger.log("job-costing-start", "DEBUG", req.user.email, jobid, null);
|
||||
|
||||
try {
|
||||
const resp = await client.setHeaders({ Authorization: BearerToken }).request(queries.QUERY_JOB_COSTING_DETAILS, {
|
||||
@@ -46,7 +47,10 @@ async function JobCostingMulti(req, res) {
|
||||
const BearerToken = req.BearerToken;
|
||||
const client = req.userGraphQLClient;
|
||||
|
||||
logger.log("job-costing-multi-start", "DEBUG", req.user.email, jobids, null);
|
||||
//Uncomment for further testing
|
||||
// logger.log("job-costing-multi-start", "DEBUG", req?.user?.email, null, {
|
||||
// jobids
|
||||
// });
|
||||
|
||||
try {
|
||||
const resp = await client
|
||||
@@ -244,7 +248,8 @@ async function JobCostingMulti(req, res) {
|
||||
data: ret
|
||||
});
|
||||
} catch (error) {
|
||||
logger.log("job-costing-multi-error", "ERROR", req.user.email, [jobids], {
|
||||
logger.log("job-costing-multi-error", "ERROR", req?.user?.email, null, {
|
||||
jobids,
|
||||
message: error.message,
|
||||
stack: error.stack
|
||||
});
|
||||
@@ -282,7 +287,13 @@ function GenerateCostingData(job) {
|
||||
if (val.mod_lbr_ty) {
|
||||
const laborProfitCenter = val.profitcenter_labor || defaultProfits[val.mod_lbr_ty] || "Unknown";
|
||||
|
||||
if (laborProfitCenter === "Unknown") console.log("Unknown type", val.line_desc, val.mod_lbr_ty);
|
||||
//Uncomment for further testing
|
||||
// if (laborProfitCenter === "Unknown") {
|
||||
// logger.log("job-costing unknown type", "debug", null, null, {
|
||||
// line_desc: val.line_desc,
|
||||
// mod_lbr_ty: val.mod_lbr_ty
|
||||
// });
|
||||
// }
|
||||
|
||||
const rateName = `rate_${(val.mod_lbr_ty || "").toLowerCase()}`;
|
||||
|
||||
@@ -349,10 +360,22 @@ function GenerateCostingData(job) {
|
||||
if (val.part_type && val.part_type !== "PAE" && val.part_type !== "PAS" && val.part_type !== "PASL") {
|
||||
const partsProfitCenter = val.profitcenter_part || defaultProfits[val.part_type] || "Unknown";
|
||||
|
||||
if (partsProfitCenter === "Unknown") console.log("Unknown type", val.line_desc, val.part_type);
|
||||
//Uncomment for further testing
|
||||
// if (partsProfitCenter === "Unknown" || !partsProfitCenter) {
|
||||
// logger.log(
|
||||
// partsProfitCenter === "Unknown"
|
||||
// ? "job-costing unknown type"
|
||||
// : "Unknown cost/profit center mapping for parts.",
|
||||
// "debug",
|
||||
// null,
|
||||
// null,
|
||||
// {
|
||||
// line_desc: val.line_desc,
|
||||
// part_type: val.part_type
|
||||
// }
|
||||
// );
|
||||
// }
|
||||
|
||||
if (!partsProfitCenter)
|
||||
console.log("Unknown cost/profit center mapping for parts.", val.line_desc, val.part_type);
|
||||
let partsAmount = Dinero({
|
||||
amount: val.act_price_before_ppc
|
||||
? Math.round(val.act_price_before_ppc * 100)
|
||||
@@ -409,10 +432,22 @@ function GenerateCostingData(job) {
|
||||
if (val.part_type && val.part_type !== "PAE" && (val.part_type === "PAS" || val.part_type === "PASL")) {
|
||||
const partsProfitCenter = val.profitcenter_part || defaultProfits[val.part_type] || "Unknown";
|
||||
|
||||
if (partsProfitCenter === "Unknown") console.log("Unknown type", val.line_desc, val.part_type);
|
||||
//Uncomment for further testing
|
||||
// if (partsProfitCenter === "Unknown" || !partsProfitCenter) {
|
||||
// logger.log(
|
||||
// partsProfitCenter === "Unknown"
|
||||
// ? "job-costing unknown type"
|
||||
// : "job-costing Unknown cost/profit center mapping for sublet",
|
||||
// "debug",
|
||||
// null,
|
||||
// null,
|
||||
// {
|
||||
// line_desc: val.line_desc,
|
||||
// part_type: val.part_type
|
||||
// }
|
||||
// );
|
||||
// }
|
||||
|
||||
if (!partsProfitCenter)
|
||||
console.log("Unknown cost/profit center mapping for sublet.", val.line_desc, val.part_type);
|
||||
const partsAmount = Dinero({
|
||||
amount: Math.round((val.act_price || 0) * 100)
|
||||
})
|
||||
@@ -443,9 +478,14 @@ function GenerateCostingData(job) {
|
||||
//If so, use it, otherwise try to use the same from the auto-allocate logic in IO app jobs-close-auto-allocate.
|
||||
const partsProfitCenter = val.profitcenter_part || getAdditionalCostCenter(val, defaultProfits) || "Unknown";
|
||||
|
||||
if (partsProfitCenter === "Unknown") {
|
||||
console.log("Unknown type", val.line_desc, val.part_type);
|
||||
}
|
||||
//Uncomment for further testing
|
||||
// if (partsProfitCenter === "Unknown") {
|
||||
// logger.log("job-costing unknown type", "debug", null, null, {
|
||||
// line_desc: val.line_desc,
|
||||
// part_type: val.part_type
|
||||
// });
|
||||
// }
|
||||
|
||||
const partsAmount = Dinero({
|
||||
amount: Math.round((val.act_price || 0) * 100)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user