3346 lines
109 KiB
JavaScript
3346 lines
109 KiB
JavaScript
|
|
const client = require("../../graphql-client/graphql-client").client;
|
|
const Fuse = require('fuse.js');
|
|
|
|
// Helper function to normalize fields
|
|
const normalizePartNumber = (str) => {
|
|
return str.replace(/[^a-zA-Z0-9]/g, '').toUpperCase();
|
|
};
|
|
|
|
const normalizeText = (str) => {
|
|
return str.replace(/[^a-zA-Z0-9\s]/g, '').replace(/\s+/g, ' ').trim().toUpperCase();
|
|
};
|
|
|
|
const normalizePrice = (str) => {
|
|
return str.replace(/[^0-9.-]+/g, "");
|
|
};
|
|
|
|
// Helper function to merge and deduplicate results with weighted scoring
|
|
const mergeResults = (resultsArray, weights = []) => {
|
|
const scoreMap = new Map();
|
|
|
|
resultsArray.forEach((results, index) => {
|
|
const weight = weights[index] || 1;
|
|
results.forEach(result => {
|
|
const id = result.item.id;
|
|
const weightedScore = result.score * weight;
|
|
|
|
if (!scoreMap.has(id)) {
|
|
scoreMap.set(id, { item: result.item, score: weightedScore, count: 1 });
|
|
} else {
|
|
const existing = scoreMap.get(id);
|
|
// Lower score is better in Fuse.js, so take the minimum
|
|
existing.score = Math.min(existing.score, weightedScore);
|
|
existing.count++;
|
|
}
|
|
});
|
|
});
|
|
|
|
// Convert back to array and sort by score (lower is better)
|
|
return Array.from(scoreMap.values())
|
|
.sort((a, b) => {
|
|
// Prioritize items found in multiple searches
|
|
if (a.count !== b.count) return b.count - a.count;
|
|
return a.score - b.score;
|
|
})
|
|
.slice(0, 5); // Return top 5 results
|
|
};
|
|
|
|
async function generateBillFormData({ processedData, jobid, bodyshopid, partsorderid }) {
|
|
processedData = processedDataFromCoache;
|
|
const jobData = { jobs_by_pk: tempJobObjectFromCoache };
|
|
//Look up the job information
|
|
// const jobData = await client.request(`
|
|
// query QUERY_BILL_OCR_DATA($jobid: uuid!, $partsorderid: uuid!) {
|
|
// jobs_by_pk(id: $jobid) {
|
|
// id
|
|
// joblines {
|
|
// id
|
|
// line_desc
|
|
// removed
|
|
// act_price
|
|
// db_price
|
|
// oem_partno
|
|
// alt_partno
|
|
// }
|
|
// }
|
|
// parts_orders_by_pk(id: $partsorderid) {
|
|
// id
|
|
// parts_order_lines {
|
|
// id
|
|
// line_desc
|
|
// act_price
|
|
// cost
|
|
// jobline {
|
|
// id
|
|
// line_desc
|
|
// act_price
|
|
// oem_partno
|
|
// alt_partno
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// `, {
|
|
// jobid, partsorderid // this may fail if null?
|
|
// });
|
|
|
|
//Get a list of vendors and the ID.
|
|
|
|
//Create fuses of line descriptions for matching.
|
|
const jobLineDescFuse = new Fuse(
|
|
jobData.jobs_by_pk.joblines,
|
|
{
|
|
keys: [{
|
|
name: 'line_desc',
|
|
weight: 4
|
|
}, {
|
|
name: 'oem_partno',
|
|
weight: 5
|
|
}, {
|
|
name: 'alt_partno',
|
|
weight: 3
|
|
},
|
|
{
|
|
name: 'act_price',
|
|
weight: 1
|
|
}],
|
|
threshold: 0.4, //Adjust as needed for matching sensitivity,
|
|
includeScore: true,
|
|
|
|
}
|
|
);
|
|
const joblineMatches = joblineFuzzySearch({ fuseToSearch: jobLineDescFuse, processedData });
|
|
console.log("*** ~ generateBillFormData ~ joblineMatches:", joblineMatches);
|
|
|
|
const { jobs_by_pk: job, parts_orders_by_pk: partsOrder } = jobData;
|
|
if (!job) {
|
|
throw new Error('Job not found for bill form data generation.');
|
|
}
|
|
//Try to match the recognized bill lines with a job line if there is one.
|
|
|
|
//Create the form data structure for the bill posting screen.
|
|
|
|
|
|
}
|
|
|
|
function joblineFuzzySearch({ fuseToSearch, processedData }) {
|
|
const matches = []
|
|
processedData.result.lineItems.forEach(lineItem => {
|
|
// Refined ITEM search (multi-word description)
|
|
const refinedItemResults = (() => {
|
|
const itemValue = lineItem.ITEM.value;
|
|
const normalized = normalizeText(itemValue);
|
|
|
|
// 1: Full string search
|
|
const fullSearch = fuseToSearch.search(normalized);
|
|
|
|
// 2: Search individual significant words (3+ chars)
|
|
const words = normalized.split(' ').filter(w => w.length >= 3);
|
|
const wordSearches = words.map(word => fuseToSearch.search(word));
|
|
|
|
// 3: Search without spaces entirely
|
|
const noSpaceSearch = fuseToSearch.search(normalized.replace(/\s+/g, ''));
|
|
|
|
// Merge results with weights (full search weighted higher)
|
|
return mergeResults(
|
|
[fullSearch, ...wordSearches, noSpaceSearch],
|
|
[1.0, ...words.map(() => 1.5), 1.2] // Full search best, individual words penalized slightly
|
|
);
|
|
})();
|
|
|
|
// Refined PRODUCT_CODE search (part numbers)
|
|
const refinedProductCodeResults = (() => {
|
|
const productCode = lineItem.PRODUCT_CODE.value;
|
|
const normalized = normalizePartNumber(productCode);
|
|
|
|
// 1: Normalized search (no spaces/special chars)
|
|
const normalizedSearch = fuseToSearch.search(normalized);
|
|
|
|
// 2: Original with minimal cleaning
|
|
const minimalClean = productCode.replace(/\s+/g, '').toUpperCase();
|
|
const minimalSearch = fuseToSearch.search(minimalClean);
|
|
|
|
// 3: Search with dashes (common in part numbers)
|
|
const withDashes = productCode.replace(/[^a-zA-Z0-9-]/g, '').toUpperCase();
|
|
const dashSearch = fuseToSearch.search(withDashes);
|
|
|
|
return mergeResults(
|
|
[normalizedSearch, minimalSearch, dashSearch],
|
|
[1.0, 1.1, 1.2] // Prefer fully normalized
|
|
);
|
|
})();
|
|
|
|
// Refined PRICE search
|
|
const refinedPriceResults = (() => {
|
|
const price = normalizePrice(lineItem.PRICE.value);
|
|
|
|
// 1: Exact price match
|
|
const exactSearch = fuseToSearch.search(price);
|
|
|
|
// 2: Price with 2 decimal places
|
|
const priceFloat = parseFloat(price);
|
|
if (!isNaN(priceFloat)) {
|
|
const formattedPrice = priceFloat.toFixed(2);
|
|
const formattedSearch = fuseToSearch.search(formattedPrice);
|
|
|
|
return mergeResults([exactSearch, formattedSearch], [1.0, 1.1]);
|
|
}
|
|
|
|
return exactSearch;
|
|
})();
|
|
|
|
// Refined UNIT_PRICE search
|
|
const refinedUnitPriceResults = (() => {
|
|
const unitPrice = normalizePrice(lineItem.UNIT_PRICE.value);
|
|
|
|
// 1: Exact price match
|
|
const exactSearch = fuseToSearch.search(unitPrice);
|
|
|
|
// 2: Price with 2 decimal places
|
|
const priceFloat = parseFloat(unitPrice);
|
|
if (!isNaN(priceFloat)) {
|
|
const formattedPrice = priceFloat.toFixed(2);
|
|
const formattedSearch = fuseToSearch.search(formattedPrice);
|
|
|
|
return mergeResults([exactSearch, formattedSearch], [1.0, 1.1]);
|
|
}
|
|
|
|
return exactSearch;
|
|
})();
|
|
|
|
//Merge them all together and sort by the highest scores.
|
|
const combinedScoreMap = new Map();
|
|
|
|
// Weight different field types differently
|
|
const fieldWeights = {
|
|
productCode: 5.0, // Most important - part numbers should match
|
|
item: 3.0, // Second most important - description
|
|
price: 1.0, // Less important - prices can vary
|
|
unitPrice: 0.8 // Least important - similar to price
|
|
};
|
|
|
|
[
|
|
{ results: refinedProductCodeResults, weight: fieldWeights.productCode, field: 'productCode' },
|
|
{ results: refinedItemResults, weight: fieldWeights.item, field: 'item' },
|
|
{ results: refinedPriceResults, weight: fieldWeights.price, field: 'price' },
|
|
{ results: refinedUnitPriceResults, weight: fieldWeights.unitPrice, field: 'unitPrice' }
|
|
].forEach(({ results, weight, field }) => {
|
|
results.forEach((result, index) => {
|
|
const id = result.item.id;
|
|
|
|
// Position bonus (first result is better than fifth)
|
|
const positionBonus = (5 - index) / 5;
|
|
|
|
// Lower score is better in Fuse.js, so invert it and apply weights
|
|
const normalizedScore = (1 - result.score) * weight * positionBonus;
|
|
|
|
if (!combinedScoreMap.has(id)) {
|
|
combinedScoreMap.set(id, {
|
|
item: result.item,
|
|
score: normalizedScore,
|
|
fieldMatches: [field],
|
|
matchCount: result.count || 1
|
|
});
|
|
} else {
|
|
const existing = combinedScoreMap.get(id);
|
|
existing.score += normalizedScore;
|
|
existing.fieldMatches.push(field);
|
|
existing.matchCount += (result.count || 1);
|
|
}
|
|
});
|
|
});
|
|
|
|
// Convert to array and sort by best combined score
|
|
const finalMatches = Array.from(combinedScoreMap.values())
|
|
.map(entry => {
|
|
// Apply penalty if item has no act_price or it's 0
|
|
const hasPriceData = entry.item.act_price && parseFloat(entry.item.act_price) > 0;
|
|
const priceDataPenalty = hasPriceData ? 1.0 : 0.5; // 50% penalty if no price
|
|
|
|
return {
|
|
...entry,
|
|
// Boost score for items that matched in multiple fields, penalize for missing price
|
|
finalScore: entry.score * (1 + (entry.fieldMatches.length * 0.2)) * priceDataPenalty,
|
|
hasPriceData
|
|
};
|
|
})
|
|
.sort((a, b) => b.finalScore - a.finalScore)
|
|
.slice(0, 5);
|
|
|
|
|
|
matches.push({ matches: finalMatches, textractLineItem: lineItem });
|
|
|
|
})
|
|
return matches
|
|
}
|
|
|
|
module.exports = {
|
|
generateBillFormData
|
|
}
|
|
|
|
|
|
//Desired Output
|
|
|
|
const output = {
|
|
"jobid": "3977b88e-68b8-482c-b10e-ca5e44222543",
|
|
"vendorid": "9261069e-4579-47d0-ad01-cdbed45c8655",
|
|
"invoice_number": "1234",
|
|
"date": "2026-01-28T19:50:13.598Z",
|
|
"is_credit_memo": false,
|
|
"total": 609.61,
|
|
"federal_tax_rate": 5,
|
|
"state_tax_rate": 7,
|
|
"local_tax_rate": 0,
|
|
"billlines": {
|
|
"data": [
|
|
{
|
|
"line_desc": "R Fender Panel",
|
|
"quantity": 1,
|
|
"actual_price": 724.01,
|
|
"actual_cost": 579.21,
|
|
"cost_center": "Aftermarket",
|
|
"applicable_taxes": {
|
|
"federal": false,
|
|
"state": false,
|
|
"local": false
|
|
},
|
|
"joblineid": "a18e0cc4-87b4-4089-a837-5e89f9ab2f77"
|
|
},
|
|
{
|
|
"line_desc": "R Fender Stone Protective Film",
|
|
"quantity": 1,
|
|
"actual_price": 15,
|
|
"actual_cost": 12,
|
|
"cost_center": "Aftermarket",
|
|
"applicable_taxes": {
|
|
"federal": false,
|
|
"state": false,
|
|
"local": false
|
|
},
|
|
"joblineid": "dded9d43-e981-42fc-82b6-c6b15740c240"
|
|
},
|
|
{
|
|
"line_desc": "R Frt Door Adhesive Nameplate",
|
|
"quantity": 1,
|
|
"actual_price": 23,
|
|
"actual_cost": 18.4,
|
|
"cost_center": "Aftermarket",
|
|
"applicable_taxes": {
|
|
"federal": false,
|
|
"state": false,
|
|
"local": false
|
|
},
|
|
"joblineid": "578c7825-4f01-46d2-a403-527613711e2c"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
|
|
const processedDataFromCoache = {
|
|
"result": {
|
|
"summary": {
|
|
"ADDRESS": {
|
|
"value": "Capilano Audi\n813 Automall Drive, North Vancouver, BC V7P\n3R8, CA",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 99.5746078491211
|
|
},
|
|
"STREET": {
|
|
"value": "813 Automall Drive,",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 99.95982360839844
|
|
},
|
|
"CITY": {
|
|
"value": "North Vancouver,",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 99.6387939453125
|
|
},
|
|
"STATE": {
|
|
"value": "CA",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 90.67389678955078
|
|
},
|
|
"ZIP_CODE": {
|
|
"value": "3R8,",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 99.11088562011719
|
|
},
|
|
"COUNTRY": {
|
|
"value": "Canada,",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 99.96498107910156
|
|
},
|
|
"ADDRESS_BLOCK": {
|
|
"value": "813 Automall Drive, North Vancouver, BC V7P\n3R8, CA",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 97.51412200927734
|
|
},
|
|
"NAME": {
|
|
"value": "Tekion Corp",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 85.7325439453125
|
|
},
|
|
"DISCOUNT": {
|
|
"value": "$0.00",
|
|
"label": "Discount",
|
|
"normalizedLabel": "UNKNOWN_discount",
|
|
"confidence": 99.7116470336914
|
|
},
|
|
"INVOICE_RECEIPT_DATE": {
|
|
"value": "Jan 13 2026",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 84.63554382324219
|
|
},
|
|
"INVOICE_RECEIPT_ID": {
|
|
"value": "72821",
|
|
"label": "Parts Invoice",
|
|
"normalizedLabel": "UNKNOWN_parts_invoice",
|
|
"confidence": 98.97218322753906
|
|
},
|
|
"TAX_PAYER_ID": {
|
|
"value": "713564805RT000",
|
|
"label": "G.S.T.#",
|
|
"normalizedLabel": "UNKNOWN_gst",
|
|
"confidence": 93.07450866699219
|
|
},
|
|
"VENDOR_VAT_NUMBER": {
|
|
"value": "713564805RT000",
|
|
"label": "G.S.T.#",
|
|
"normalizedLabel": "UNKNOWN_gst",
|
|
"confidence": 93.07450866699219
|
|
},
|
|
"PO_NUMBER": {
|
|
"value": "58117",
|
|
"label": "Customer PO No :",
|
|
"normalizedLabel": "UNKNOWN_customer_po_no_",
|
|
"confidence": 98.43647003173828
|
|
},
|
|
"RECEIVER_ADDRESS": {
|
|
"value": "1172 W 3RD ST\nNORTH VANCOUVER, BC\nCanada, V7P 1E6",
|
|
"label": "Billing Address",
|
|
"normalizedLabel": "UNKNOWN_billing_address",
|
|
"confidence": 99.65380859375
|
|
},
|
|
"RECEIVER_NAME": {
|
|
"value": "6992 COACHE COLLISION LTD.\n-",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 76.0853500366211
|
|
},
|
|
"RECEIVER_PHONE": {
|
|
"value": "(604) 987 2211",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 70.94715118408203
|
|
},
|
|
"SUBTOTAL": {
|
|
"value": "$4,421.82",
|
|
"label": "Sub Total",
|
|
"normalizedLabel": "UNKNOWN_sub_total",
|
|
"confidence": 99.92008972167969
|
|
},
|
|
"TAX": {
|
|
"value": "$221.09",
|
|
"label": "GST",
|
|
"normalizedLabel": "UNKNOWN_gst",
|
|
"confidence": 99.90827178955078
|
|
},
|
|
"TOTAL": {
|
|
"value": "$4,642.91",
|
|
"label": "Total",
|
|
"normalizedLabel": "UNKNOWN_total",
|
|
"confidence": 99.9670639038086
|
|
},
|
|
"VENDOR_ADDRESS": {
|
|
"value": "Capilano Audi\n813 Automall Drive, North Vancouver, BC V7P\n3R8, CA",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 99.5746078491211
|
|
},
|
|
"VENDOR_NAME": {
|
|
"value": "Tekion Corp",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 85.7325439453125
|
|
},
|
|
"VENDOR_PHONE": {
|
|
"value": "(604) 985-0693,",
|
|
"label": "Tel:",
|
|
"normalizedLabel": "UNKNOWN_tel",
|
|
"confidence": 92.17896270751953
|
|
}
|
|
},
|
|
"lineItems": [
|
|
{
|
|
"PRODUCT_CODE": {
|
|
"value": "80A-807-107-G-GRU",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 60.69740676879883
|
|
},
|
|
"ITEM": {
|
|
"value": "80A-807-107-G-GRU COVER\n-",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 80.92524719238281
|
|
},
|
|
"PRICE": {
|
|
"value": "$914.16",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.99465942382812
|
|
},
|
|
"QUANTITY": {
|
|
"value": "1",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 98.02381134033203
|
|
},
|
|
"UNIT_PRICE": {
|
|
"value": "$914.16",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 90.97144317626953
|
|
},
|
|
"EXPENSE_ROW": {
|
|
"value": "price\n1 80A-807-107-G-GRU COVER 1 SP-ORD $1,172.00 $914.16 $914.16\n-\nchange",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 95.68555450439453
|
|
}
|
|
},
|
|
{
|
|
"OTHER": {
|
|
"value": "$246.00",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 90.83607482910156
|
|
},
|
|
"PRODUCT_CODE": {
|
|
"value": "80A-807-647-C-9B9",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 63.68674087524414
|
|
},
|
|
"ITEM": {
|
|
"value": "80A-807-647-C-9B9 GRILLE\n-",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 82.46648406982422
|
|
},
|
|
"PRICE": {
|
|
"value": "$191.88",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.9972915649414
|
|
},
|
|
"QUANTITY": {
|
|
"value": "1",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.20547485351562
|
|
},
|
|
"UNIT_PRICE": {
|
|
"value": "$191.88",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 93.8568344116211
|
|
},
|
|
"EXPENSE_ROW": {
|
|
"value": "2 80A-807-647-C-9B9 GRILLE 1 SP-ORD $246.00 $191.88 $191.88\n-",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 95.46671295166016
|
|
}
|
|
},
|
|
{
|
|
"OTHER": {
|
|
"value": "$286.00",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 88.31619262695312
|
|
},
|
|
"PRODUCT_CODE": {
|
|
"value": "80A-807-661-A-GRU",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 73.04312133789062
|
|
},
|
|
"ITEM": {
|
|
"value": "80A-807-661-A-GRU CONN PIECE\n-",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 84.59918212890625
|
|
},
|
|
"PRICE": {
|
|
"value": "$223.08",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.99654388427734
|
|
},
|
|
"QUANTITY": {
|
|
"value": "1",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.30966186523438
|
|
},
|
|
"UNIT_PRICE": {
|
|
"value": "$223.08",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 91.8134765625
|
|
},
|
|
"EXPENSE_ROW": {
|
|
"value": "3 80A-807-661-A-GRU CONN PIECE 1 SP-ORD $286.00 $223.08 $223.08\n-",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 95.99571228027344
|
|
}
|
|
},
|
|
{
|
|
"OTHER": {
|
|
"value": "$1,275.00",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 89.5396499633789
|
|
},
|
|
"PRODUCT_CODE": {
|
|
"value": "80A-853-765--3Q7",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 79.21212005615234
|
|
},
|
|
"ITEM": {
|
|
"value": "80A-853-765--3Q7 MOLDING\n-",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 75.85474395751953
|
|
},
|
|
"PRICE": {
|
|
"value": "$994.50",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.99325561523438
|
|
},
|
|
"QUANTITY": {
|
|
"value": "1",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 98.7352294921875
|
|
},
|
|
"UNIT_PRICE": {
|
|
"value": "$994.50",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 96.28019714355469
|
|
},
|
|
"EXPENSE_ROW": {
|
|
"value": "4 80A-853-765--3Q7 MOLDING 1 SP-ORD $1,275.00 $994.50 $994.50\n-",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 96.20103454589844
|
|
}
|
|
},
|
|
{
|
|
"OTHER": {
|
|
"value": "$2,690.00",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 91.14651489257812
|
|
},
|
|
"ITEM": {
|
|
"value": "GRILLE",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 84.18718719482422
|
|
},
|
|
"PRICE": {
|
|
"value": "$2,098.20",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.97396087646484
|
|
},
|
|
"QUANTITY": {
|
|
"value": "1",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 99.32916259765625
|
|
},
|
|
"UNIT_PRICE": {
|
|
"value": "$2,098.20",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 98.04034423828125
|
|
},
|
|
"PRODUCT_CODE": {
|
|
"value": "80A-853-651-L-RP5",
|
|
"label": "38",
|
|
"normalizedLabel": "UNKNOWN_38",
|
|
"confidence": 86.12691497802734
|
|
},
|
|
"EXPENSE_ROW": {
|
|
"value": "5 80A-853-651-L-RP5 GRILLE 1 SP-ORD $2,690.00 $2,098.20 $2,098.20\n-",
|
|
"label": "",
|
|
"normalizedLabel": "",
|
|
"confidence": 93.76665496826172
|
|
}
|
|
}
|
|
],
|
|
|
|
}
|
|
}
|
|
|
|
const tempJobObjectFromCoache = {
|
|
"tasks_aggregate": {
|
|
"aggregate": {
|
|
"count": 0,
|
|
"__typename": "tasks_aggregate_fields"
|
|
},
|
|
"__typename": "tasks_aggregate"
|
|
},
|
|
"actual_completion": "2026-01-21T22:50:00+00:00",
|
|
"actual_delivery": "2026-01-22T00:50:00+00:00",
|
|
"actual_in": "2026-01-09T22:23:41.562+00:00",
|
|
"acv_amount": null,
|
|
"admin_clerk": "bianca@raydarcollisiongroup.com",
|
|
"adjustment_bottom_line": null,
|
|
"alt_transport": "Rental",
|
|
"area_of_damage": {
|
|
"impact1": "12",
|
|
"impact2": null
|
|
},
|
|
"auto_add_ats": false,
|
|
"available_jobs": [],
|
|
"ca_bc_pvrt": null,
|
|
"ca_customer_gst": 0,
|
|
"ca_gst_registrant": false,
|
|
"category": "Hit & Run",
|
|
"cccontracts": [],
|
|
"cieca_pfl": {},
|
|
"cieca_pfo": {},
|
|
"cieca_pft": {},
|
|
"cieca_ttl": {
|
|
"data": {
|
|
"g_tax": 620.74,
|
|
"gst_amt": 443.39,
|
|
"g_aa_amt": 0,
|
|
"prev_net": 0,
|
|
"supp_amt": -697.45,
|
|
"g_ded_amt": 300,
|
|
"g_rpd_amt": 0,
|
|
"g_ttl_amt": 9931.82,
|
|
"g_upd_amt": 0,
|
|
"n_ttl_amt": 9631.82,
|
|
"g_bett_amt": 0,
|
|
"g_cust_amt": 300,
|
|
"g_ttl_disc": 0
|
|
}
|
|
},
|
|
"class": null,
|
|
"clm_no": "DA37868-0-A",
|
|
"clm_total": 9931.81,
|
|
"comment": "IN 01/09/2026 02:23 pm\nCOMP 01/21/2026 02:50 pm\nDEL 01/21/2026 04:50 pm",
|
|
"converted": true,
|
|
"csiinvites": [],
|
|
"date_estimated": "2026-01-07",
|
|
"date_exported": "2026-01-26T19:19:13.41+00:00",
|
|
"date_invoiced": "2026-01-26T19:07:11.473+00:00",
|
|
"date_last_contacted": null,
|
|
"date_lost_sale": null,
|
|
"date_next_contact": null,
|
|
"date_open": "2026-01-07T18:50:36.171+00:00",
|
|
"date_rentalresp": null,
|
|
"date_repairstarted": null,
|
|
"date_scheduled": null,
|
|
"date_towin": null,
|
|
"date_void": null,
|
|
"ded_amt": 300,
|
|
"ded_note": null,
|
|
"ded_status": "Y",
|
|
"deliverchecklist": {
|
|
"form": [
|
|
{
|
|
"name": "Detailed",
|
|
"type": "checkbox",
|
|
"label": "Detailed?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Buffed",
|
|
"type": "checkbox",
|
|
"label": "Buffed?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Comments",
|
|
"type": "text",
|
|
"label": "Additional Comments?",
|
|
"required": false
|
|
}
|
|
],
|
|
"completed_at": "2026-01-26T17:57:21.864Z",
|
|
"completed_by": "reception@coachecollision.ca",
|
|
"actual_delivery": "2026-01-22T00:50:00.000Z",
|
|
"actual_completion": "2026-01-21T22:50:00.000Z",
|
|
"removeFromProduction": true
|
|
},
|
|
"depreciation_taxes": 0,
|
|
"driveable": true,
|
|
"employee_body": "f7cbeb13-f193-45bf-ba79-0ad11551b775",
|
|
"employee_body_rel": {
|
|
"id": "f7cbeb13-f193-45bf-ba79-0ad11551b775",
|
|
"first_name": "Steve",
|
|
"last_name": "Steele",
|
|
"__typename": "employees"
|
|
},
|
|
"employee_csr": null,
|
|
"employee_csr_rel": null,
|
|
"employee_prep": null,
|
|
"employee_prep_rel": null,
|
|
"employee_refinish": "8535a3bc-0162-4fd8-8efd-48e99f437154",
|
|
"employee_refinish_rel": {
|
|
"id": "8535a3bc-0162-4fd8-8efd-48e99f437154",
|
|
"first_name": "David",
|
|
"last_name": "Lam",
|
|
"__typename": "employees"
|
|
},
|
|
"est_co_nm": null,
|
|
"est_ct_fn": "Nuben",
|
|
"est_ct_ln": "Suthatharan",
|
|
"est_ea": "Nuben@coachecollision.ca",
|
|
"est_ph1": null,
|
|
"flat_rate_ats": false,
|
|
"federal_tax_rate": 0.05,
|
|
"hit_and_run": true,
|
|
"id": "62fcba91-b8df-4076-b5f5-14f8827c8f92",
|
|
"inproduction": false,
|
|
"ins_addr1": null,
|
|
"ins_city": null,
|
|
"ins_co_id": null,
|
|
"ins_co_nm": "ICBC",
|
|
"ins_ct_fn": null,
|
|
"ins_ct_ln": null,
|
|
"ins_ea": null,
|
|
"ins_ph1": null,
|
|
"intakechecklist": {
|
|
"ICBC": true,
|
|
"form": [
|
|
{
|
|
"name": "ICBC",
|
|
"type": "checkbox",
|
|
"label": "ICBC",
|
|
"value": true
|
|
},
|
|
{
|
|
"name": "PRIVATE",
|
|
"type": "checkbox",
|
|
"label": "PRIVATE"
|
|
},
|
|
{
|
|
"name": "TOW-IN",
|
|
"type": "checkbox",
|
|
"label": "TOW-IN"
|
|
},
|
|
{
|
|
"name": "How did you hear about us?",
|
|
"type": "textarea",
|
|
"label": "How did you hear about us?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Were you referred to us?",
|
|
"type": "checkbox",
|
|
"label": "Were you referred to us?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "If YES, By who?",
|
|
"type": "textarea",
|
|
"label": "If YES, By who?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "CUSTOMER INFORMATION",
|
|
"type": "text",
|
|
"label": "CUSTOMER INFORMATION",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Phone Numbers:",
|
|
"type": "textarea",
|
|
"label": "Phone Numbers:",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Cell:",
|
|
"type": "textarea",
|
|
"label": "Cell:",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Text OK?",
|
|
"type": "checkbox",
|
|
"label": "Text OK?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Email Address:",
|
|
"type": "textarea",
|
|
"label": "Email Address:",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Carry loss of use?",
|
|
"type": "checkbox",
|
|
"label": "Carry loss of use?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Carry OEM Replacement Cost Policy?",
|
|
"type": "checkbox",
|
|
"label": "Carry OEM Replacement Cost Policy?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "GST Recipiant",
|
|
"type": "checkbox",
|
|
"label": "GST Recipiant",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "VEHICLE INFORMATION",
|
|
"type": "text",
|
|
"label": "VEHICLE INFORMATION",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Canapy",
|
|
"type": "checkbox",
|
|
"label": "Canapy",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Keys",
|
|
"type": "checkbox",
|
|
"label": "Keys",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Wheel Locks",
|
|
"type": "checkbox",
|
|
"label": "Wheel Locks",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Alarm",
|
|
"type": "checkbox",
|
|
"label": "Alarm",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Fob",
|
|
"type": "checkbox",
|
|
"label": "Fob",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Dash board waring lights on?",
|
|
"type": "textarea",
|
|
"label": "Dash board waring lights on?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Passenger in car?",
|
|
"type": "textarea",
|
|
"label": "Passenger in car?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Interior Damage?",
|
|
"type": "textarea",
|
|
"label": "Interior Damage?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Any power options not working?",
|
|
"type": "textarea",
|
|
"label": "Any power options not working?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Did the car hit a curb?",
|
|
"type": "textarea",
|
|
"label": "Did the car hit a curb?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Anything in the Truck or box of the Truck?",
|
|
"type": "textarea",
|
|
"label": "Anything in the Truck on box of the Truck?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Old damage discussed with RO",
|
|
"type": "textarea",
|
|
"label": "Old damage discussed with RO",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "If we find any dents or dings in repair panels would you like to be notified and given an estimate?",
|
|
"type": "checkbox",
|
|
"label": "If we find any dents or dings in repair panels would you like to be notified and given an estimate?",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Condition of Windshield",
|
|
"type": "textarea",
|
|
"label": "Condition of Windshield",
|
|
"required": false
|
|
},
|
|
{
|
|
"name": "Notes",
|
|
"type": "textarea",
|
|
"label": "Notes"
|
|
}
|
|
],
|
|
"completed_at": "2026-01-09T22:23:41.562Z",
|
|
"completed_by": "nuben@coachecollision.ca",
|
|
"addToProduction": true,
|
|
"production_vars": {},
|
|
"scheduled_delivery": null,
|
|
"scheduled_completion": "2026-01-13T22:23:39.311Z"
|
|
},
|
|
"invoice_final_note": null,
|
|
"iouparent": null,
|
|
"job_totals": {
|
|
"parts": {
|
|
"parts": {
|
|
"list": {
|
|
"PAA": {
|
|
"total": {
|
|
"amount": 58102,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"PAE": {
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"PAN": {
|
|
"total": {
|
|
"amount": 701000,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
}
|
|
},
|
|
"total": {
|
|
"amount": 759102,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"subtotal": {
|
|
"amount": 759102,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"prt_dsmk_total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"sublets": {
|
|
"total": {
|
|
"amount": 35000,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"subtotal": {
|
|
"amount": 35000,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
}
|
|
},
|
|
"rates": {
|
|
"la1": {
|
|
"rate": 97.8,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"la2": {
|
|
"rate": 0,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"la3": {
|
|
"rate": 107.35,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"la4": {
|
|
"rate": 0,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"laa": {
|
|
"rate": 107.35,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"lab": {
|
|
"rate": 89.46,
|
|
"hours": 5.800000000000001,
|
|
"total": {
|
|
"amount": 51887,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"lad": {
|
|
"rate": 0,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"lae": {
|
|
"rate": 0,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"laf": {
|
|
"rate": 102.27,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"lag": {
|
|
"rate": 89.46,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"lam": {
|
|
"rate": 115.05,
|
|
"hours": 0.8,
|
|
"total": {
|
|
"amount": 9204,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"lar": {
|
|
"rate": 89.46,
|
|
"hours": 1.8,
|
|
"total": {
|
|
"amount": 16103,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"las": {
|
|
"rate": 89.46,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"lau": {
|
|
"rate": 0,
|
|
"hours": 0,
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"mapa": {
|
|
"rate": 60.11,
|
|
"hours": 1.8,
|
|
"total": {
|
|
"amount": 10820,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"mash": {
|
|
"rate": 7.05,
|
|
"hours": 6.6000000000000005,
|
|
"total": {
|
|
"amount": 4653,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"subtotal": {
|
|
"amount": 92667,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"rates_subtotal": {
|
|
"amount": 77194,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"totals": {
|
|
"subtotal": {
|
|
"amount": 886769,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"local_tax": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"state_tax": {
|
|
"amount": 62074,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"custPayable": {
|
|
"total": {
|
|
"amount": 30000,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"dep_taxes": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"deductible": {
|
|
"amount": 30000,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"federal_tax": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"other_customer_amount": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"federal_tax": {
|
|
"amount": 44338,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"net_repairs": {
|
|
"amount": 963181,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"statePartsTax": {
|
|
"amount": 55587,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"total_repairs": {
|
|
"amount": 993181,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
}
|
|
},
|
|
"additional": {
|
|
"pvrt": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"total": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"towing": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"storage": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"shipping": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"adjustments": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"additionalCosts": {
|
|
"amount": 0,
|
|
"currency": "USD",
|
|
"precision": 2
|
|
},
|
|
"additionalCostItems": []
|
|
}
|
|
},
|
|
"job_watchers": [],
|
|
"joblines": [
|
|
{
|
|
"act_price": 1172,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 914.17,
|
|
"actual_price": 1172,
|
|
"bill": {
|
|
"id": "a9dda427-a344-4f72-b7a0-3702b7f8c1b6",
|
|
"invoice_number": "72821",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "65a1bf5d-a520-4b0a-a1d3-3518de994bc6",
|
|
"joblineid": "e64ab0ba-03b1-4b16-991d-b533caa57ef1",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 1.6,
|
|
"db_price": 1419,
|
|
"db_ref": "202199",
|
|
"id": "e64ab0ba-03b1-4b16-991d-b533caa57ef1",
|
|
"ioucreated": false,
|
|
"lbr_amt": 143.14,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Frt Bumper Side Cover",
|
|
"line_ind": "S1",
|
|
"line_no": 1,
|
|
"line_ref": 14,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 1.6,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 07 ETA 1 - 2 WEEKS",
|
|
"oem_partno": "80A 807 107 M GRU",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 14,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "9c7744db-7f5a-4d16-aa29-3c65d1044fe5",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 2,
|
|
"line_ref": 14,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 18,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 1.1,
|
|
"db_price": 0,
|
|
"db_ref": "201285",
|
|
"id": "07b44893-092c-4687-a24b-970fc96ff4f3",
|
|
"ioucreated": false,
|
|
"lbr_amt": 98.41,
|
|
"lbr_op": "OP6",
|
|
"line_desc": "L Frt Bumper Side Cover",
|
|
"line_ind": "S1",
|
|
"line_no": 3,
|
|
"line_ref": 14,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 1.1,
|
|
"mod_lbr_ty": "LAR",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REFINISH",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 15,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.1,
|
|
"db_price": 0,
|
|
"db_ref": "201299",
|
|
"id": "a6b9007d-d45c-4e7c-9dad-9e141c97a5d2",
|
|
"ioucreated": false,
|
|
"lbr_amt": 8.95,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Frt Add W/Parallel Park Assist Sensor",
|
|
"line_ind": "S1",
|
|
"line_no": 4,
|
|
"line_ref": 14,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.1,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 17,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 246,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 191.88,
|
|
"actual_price": 246,
|
|
"bill": {
|
|
"id": "a9dda427-a344-4f72-b7a0-3702b7f8c1b6",
|
|
"invoice_number": "72821",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "fe9d8dd3-74a0-4e51-bb3a-0f2529613d4d",
|
|
"joblineid": "5703a154-9cd8-41b2-b9c6-0e5665948052",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.3,
|
|
"db_price": 246,
|
|
"db_ref": "200194",
|
|
"id": "5703a154-9cd8-41b2-b9c6-0e5665948052",
|
|
"ioucreated": false,
|
|
"lbr_amt": 26.84,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "Frt Lwr Bumper Grille",
|
|
"line_ind": "E",
|
|
"line_no": 5,
|
|
"line_ref": 7,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.3,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 07 ETA LOCAL",
|
|
"oem_partno": "80A 807 647 C 9B9",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 7,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "f1cb3534-949c-4f50-8d48-184483847b90",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 6,
|
|
"line_ref": 7,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 9,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 1.2,
|
|
"db_price": 0,
|
|
"db_ref": "201294",
|
|
"id": "966d17a3-4575-413c-9e81-3b5aed0c2034",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP2",
|
|
"line_desc": "Frt Bumper Cover",
|
|
"line_ind": "E",
|
|
"line_no": 7,
|
|
"line_ref": 7,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / INSTALL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 8,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 223.08,
|
|
"actual_price": 286,
|
|
"bill": {
|
|
"id": "92120eaf-8a04-4629-8e6c-082ce2fef717",
|
|
"invoice_number": "CM-72821-1",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "4dff060e-54c7-4a46-9349-0d482fdc1196",
|
|
"joblineid": "a89761f4-97e2-474b-b981-fa9cede17005",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.3,
|
|
"db_price": 286,
|
|
"db_ref": "200195",
|
|
"id": "a89761f4-97e2-474b-b981-fa9cede17005",
|
|
"ioucreated": false,
|
|
"lbr_amt": 26.84,
|
|
"lbr_op": "OP2",
|
|
"line_desc": "Frt Lwr Bumper Plate",
|
|
"line_ind": "S1",
|
|
"line_no": 8,
|
|
"line_ref": 23,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.3,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 07 ETA LOCAL",
|
|
"oem_partno": "80A 807 661 A GRU",
|
|
"op_code_desc": "REMOVE / INSTALL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAE",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Returned",
|
|
"tax_part": false,
|
|
"unq_seq": 23,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 1275,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 994.5,
|
|
"actual_price": 1275,
|
|
"bill": {
|
|
"id": "a9dda427-a344-4f72-b7a0-3702b7f8c1b6",
|
|
"invoice_number": "72821",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "c9cec9ef-7b5a-4232-9b69-5ee8e5089e23",
|
|
"joblineid": "9a531740-43f4-4181-8406-1c6e64046fa3",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.2,
|
|
"db_price": 1275,
|
|
"db_ref": "200197",
|
|
"id": "9a531740-43f4-4181-8406-1c6e64046fa3",
|
|
"ioucreated": false,
|
|
"lbr_amt": 17.89,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "Frt Lwr Bumper Moulding",
|
|
"line_ind": "E",
|
|
"line_no": 9,
|
|
"line_ref": 27,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.2,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 07 ETA LOCAL",
|
|
"oem_partno": "80A 853 765 3Q7",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 27,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "f7e70ed4-de45-4532-bc8a-d3e541be83d4",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 10,
|
|
"line_ref": 27,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 28,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 120,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": "AQ518.264",
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 96,
|
|
"actual_price": 120,
|
|
"bill": {
|
|
"id": "c2c1850b-494d-4cbf-8083-dff15eadf745",
|
|
"invoice_number": "041105",
|
|
"vendor": {
|
|
"id": "72634cde-8dfa-457c-8c04-08621e712d67",
|
|
"name": "KWANTLEN ENTERPRISES LTD",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "42cbbc6e-e8ea-4efb-aa5a-7f92cdff448f",
|
|
"joblineid": "176052dd-4c5f-4d64-a520-74194a87fea2",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.2,
|
|
"db_price": 163,
|
|
"db_ref": "200200",
|
|
"id": "176052dd-4c5f-4d64-a520-74194a87fea2",
|
|
"ioucreated": false,
|
|
"lbr_amt": 17.89,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Frt Bumper Reflector",
|
|
"line_ind": "E",
|
|
"line_no": 11,
|
|
"line_ref": 42,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.2,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD KW JAN 09 ETA JAN 13",
|
|
"oem_partno": "80A 945 071 A",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAA",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 42,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "16c263a7-c12d-4b1e-851a-532843ad87ac",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "INSIDE BROEKN -- GLUED ON",
|
|
"line_ind": "E",
|
|
"line_no": 12,
|
|
"line_ref": 42,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 47,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 306.01,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": "AU38-000W-0C",
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 174.43,
|
|
"actual_price": 306.01,
|
|
"bill": {
|
|
"id": "a57ce241-e00a-4ba3-9f26-e9e0e5eba1d2",
|
|
"invoice_number": "IS2595145",
|
|
"vendor": {
|
|
"id": "e54b45b4-55ab-4379-8d82-e4007e71622c",
|
|
"name": "A.P.T. AUTO PARTS TRADING CO LTD",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "5c9571e2-5abf-45e9-9dc7-896019e538b0",
|
|
"joblineid": "bde7f2b2-d2dc-480b-9398-233ada3ebae4",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 407,
|
|
"db_ref": "200173",
|
|
"id": "bde7f2b2-d2dc-480b-9398-233ada3ebae4",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "Frt Bumper Impact Absorber",
|
|
"line_ind": "E",
|
|
"line_no": 13,
|
|
"line_ref": 32,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD APT JAN 09 ETA JAN 12",
|
|
"oem_partno": "80A 807 550 C",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAA",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 32,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "1e82e200-5654-4521-9b1f-5930d24d3a3c",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 14,
|
|
"line_ref": 32,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 33,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 2690,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 2098.2,
|
|
"actual_price": 2690,
|
|
"bill": {
|
|
"id": "a9dda427-a344-4f72-b7a0-3702b7f8c1b6",
|
|
"invoice_number": "72821",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "5420de33-09fd-4ed3-9e4e-604403d88e17",
|
|
"joblineid": "78c719ec-dbeb-445d-8d45-ba15d3099edb",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 1,
|
|
"db_price": 2690,
|
|
"db_ref": "202371",
|
|
"id": "78c719ec-dbeb-445d-8d45-ba15d3099edb",
|
|
"ioucreated": false,
|
|
"lbr_amt": 89.46,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "Grille Assembly",
|
|
"line_ind": "E",
|
|
"line_no": 15,
|
|
"line_ref": 10,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 1,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 07 ETA LOCAL",
|
|
"oem_partno": "80A 853 651 L RP5",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 10,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "20a9e040-74ad-47a2-993d-dd36f58311a0",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 16,
|
|
"line_ref": 10,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 13,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.2,
|
|
"db_price": 0,
|
|
"db_ref": "201373",
|
|
"id": "4525e99d-c06a-47df-aa6a-1b14d27697b5",
|
|
"ioucreated": false,
|
|
"lbr_amt": 17.89,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "Frt Inr Add w/Parking Sensor",
|
|
"line_ind": "E",
|
|
"line_no": 17,
|
|
"line_ref": 10,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.2,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 12,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 447,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 348.66,
|
|
"actual_price": 447,
|
|
"bill": {
|
|
"id": "9a87a941-da0b-468f-9c99-9a8856a9a2e9",
|
|
"invoice_number": "72865",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "1ac66d08-afc3-48c1-a3cf-6ed5611f6558",
|
|
"joblineid": "2679e440-4c79-4d70-ac20-6e6dc8ae8770",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.4,
|
|
"db_price": 447,
|
|
"db_ref": "202383",
|
|
"id": "2679e440-4c79-4d70-ac20-6e6dc8ae8770",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "Grille Plate",
|
|
"line_ind": "E",
|
|
"line_no": 18,
|
|
"line_ref": 29,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 09 ETA JAN 12",
|
|
"oem_partno": "80A 853 692 A",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 29,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "b0a41a8a-f332-409c-bf2b-1924431629a2",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 19,
|
|
"line_ref": 29,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 31,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 149,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 116.22,
|
|
"actual_price": 149,
|
|
"bill": {
|
|
"id": "9a87a941-da0b-468f-9c99-9a8856a9a2e9",
|
|
"invoice_number": "72865",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "39e324fa-06da-487a-9d23-288eb476d103",
|
|
"joblineid": "7ba6a3cc-3291-40d6-a258-cf60573fe63f",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.4,
|
|
"db_price": 149,
|
|
"db_ref": "201241",
|
|
"id": "7ba6a3cc-3291-40d6-a258-cf60573fe63f",
|
|
"ioucreated": false,
|
|
"lbr_amt": 35.78,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Cooling Air Deflector",
|
|
"line_ind": "E",
|
|
"line_no": 20,
|
|
"line_ref": 34,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.4,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 09 ETA JAN 12",
|
|
"oem_partno": "80A 121 283 K",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 34,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "989d0abc-05ab-409d-9cb2-2ea0ebccb13f",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 21,
|
|
"line_ref": 34,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 35,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 597,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 465.66,
|
|
"actual_price": 597,
|
|
"bill": {
|
|
"id": "f0cedaf5-e8ac-4fe5-bfd6-3bc38d430d98",
|
|
"invoice_number": "72868",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "34baeff0-8481-478b-acf4-4a0772d0ee5e",
|
|
"joblineid": "60d8f84e-af42-4013-a967-5bad275844d3",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.8,
|
|
"db_price": 597,
|
|
"db_ref": "202630",
|
|
"id": "60d8f84e-af42-4013-a967-5bad275844d3",
|
|
"ioucreated": false,
|
|
"lbr_amt": 92.04,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Cooling Auxiliary Radiator -M",
|
|
"line_ind": "E",
|
|
"line_no": 22,
|
|
"line_ref": 36,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.8,
|
|
"mod_lbr_ty": "LAM",
|
|
"notes": "ORD PERFORMANCE JAN 09 ETA NO STOCK ORD OEM JAN 09 ETA",
|
|
"oem_partno": "80A 121 212 E",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 36,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "9f7a1b49-468f-4156-803c-6cd6083ceec3",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "DAMAGED -- ALPI NO STOCK / PERFORMANCE N",
|
|
"line_ind": "E",
|
|
"line_no": 23,
|
|
"line_ref": 36,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 37,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 149,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 116.22,
|
|
"actual_price": 149,
|
|
"bill": {
|
|
"id": "9a87a941-da0b-468f-9c99-9a8856a9a2e9",
|
|
"invoice_number": "72865",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "71ed0c79-3cce-4245-90c3-2869880a785e",
|
|
"joblineid": "bb6d3570-b61a-49be-9c33-9df9dc9827be",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 149,
|
|
"db_ref": "204303",
|
|
"id": "bb6d3570-b61a-49be-9c33-9df9dc9827be",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Cooling Air Duct",
|
|
"line_ind": "E",
|
|
"line_no": 24,
|
|
"line_ref": 38,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 09 ETA JAN 12",
|
|
"oem_partno": "80A 121 333 D",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 38,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "27b2668e-874f-483d-a63a-504aa7633777",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 25,
|
|
"line_ref": 38,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 39,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 285,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 222.3,
|
|
"actual_price": 285,
|
|
"bill": {
|
|
"id": "9a87a941-da0b-468f-9c99-9a8856a9a2e9",
|
|
"invoice_number": "72865",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "d1399be3-a660-4ac6-9eb7-cbcc4e304c78",
|
|
"joblineid": "4584e129-aeb7-4ea0-96de-73f0a56c26c7",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.5,
|
|
"db_price": 285,
|
|
"db_ref": "201577",
|
|
"id": "4584e129-aeb7-4ea0-96de-73f0a56c26c7",
|
|
"ioucreated": false,
|
|
"lbr_amt": 44.73,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Fender Splash Shield",
|
|
"line_ind": "E",
|
|
"line_no": 26,
|
|
"line_ref": 40,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.5,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD OEM JAN 09 ETA JAN 12",
|
|
"oem_partno": "80A 853 887 K",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAN",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 40,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "45b16056-b19c-41f0-82ba-5c6ab0404fbd",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "TABS TORN / MISSING PIECES",
|
|
"line_ind": "E",
|
|
"line_no": 27,
|
|
"line_ref": 40,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 41,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 155.01,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": "AU38-219B-2C",
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 88.36,
|
|
"actual_price": 155.01,
|
|
"bill": {
|
|
"id": "a57ce241-e00a-4ba3-9f26-e9e0e5eba1d2",
|
|
"invoice_number": "IS2595145",
|
|
"vendor": {
|
|
"id": "e54b45b4-55ab-4379-8d82-e4007e71622c",
|
|
"name": "A.P.T. AUTO PARTS TRADING CO LTD",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "4863b4ce-5c1c-4429-89ee-4b08c7c4cdd0",
|
|
"joblineid": "d5cc63f7-346d-4246-840d-fe4d1cdb217c",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.3,
|
|
"db_price": 241,
|
|
"db_ref": "201599",
|
|
"id": "d5cc63f7-346d-4246-840d-fe4d1cdb217c",
|
|
"ioucreated": false,
|
|
"lbr_amt": 26.84,
|
|
"lbr_op": "OP11",
|
|
"line_desc": "L Frt Body Headlamp Mtg Brkt",
|
|
"line_ind": "E",
|
|
"line_no": 28,
|
|
"line_ref": 44,
|
|
"location": "",
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.3,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": "ORD APT JAN 09 ETA JAN 12",
|
|
"oem_partno": "80A 805 607",
|
|
"op_code_desc": "REMOVE / REPLACE",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAA",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 44,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "6df2b618-68ce-4138-a93d-99dbd755612c",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "CRACKED",
|
|
"line_ind": "E",
|
|
"line_no": 29,
|
|
"line_ref": 44,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 46,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0.4,
|
|
"db_price": 0,
|
|
"db_ref": "201304",
|
|
"id": "6281b001-55af-43f2-bb67-75154f396053",
|
|
"ioucreated": false,
|
|
"lbr_amt": 35.78,
|
|
"lbr_op": "OP2",
|
|
"line_desc": "L Front Combination Lamp",
|
|
"line_ind": "E",
|
|
"line_no": 30,
|
|
"line_ref": 44,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.4,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / INSTALL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 45,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 46.53,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "936007",
|
|
"id": "6efcef5e-6697-426f-998d-9db0208ed164",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP13",
|
|
"line_desc": "Shop Materials",
|
|
"line_ind": null,
|
|
"line_no": 31,
|
|
"line_ref": 4,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "ADDITIONAL COSTS",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": true,
|
|
"unq_seq": 4,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 108.2,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "936008",
|
|
"id": "e29b7c4f-d12c-44f4-84a1-414bb7a0bad5",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP13",
|
|
"line_desc": "Paint/Materials",
|
|
"line_ind": null,
|
|
"line_no": 32,
|
|
"line_ref": 6,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "ADDITIONAL COSTS",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": true,
|
|
"unq_seq": 6,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "933002",
|
|
"id": "4c35520b-9538-4101-b40e-2ec2a52285fc",
|
|
"ioucreated": false,
|
|
"lbr_amt": 35.78,
|
|
"lbr_op": "OP14",
|
|
"line_desc": "Clear Coat",
|
|
"line_ind": "E",
|
|
"line_no": 33,
|
|
"line_ref": 19,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.4,
|
|
"mod_lbr_ty": "LAR",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "ADDITIONAL OPERATIONS",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 19,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900500",
|
|
"id": "1210db03-3a0d-4893-88ca-411de3d7484c",
|
|
"ioucreated": false,
|
|
"lbr_amt": 26.84,
|
|
"lbr_op": "OP9",
|
|
"line_desc": "ICBC POST REPAIR SCAN",
|
|
"line_ind": "E",
|
|
"line_no": 34,
|
|
"line_ref": 2,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.3,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REPAIR",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAE",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 2,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 50,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": "Sublet",
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 0,
|
|
"actual_price": 50,
|
|
"bill": {
|
|
"id": "1a9798cb-1f37-4198-b2f7-a53d3b97eab2",
|
|
"invoice_number": "3077",
|
|
"vendor": {
|
|
"id": "6793335c-98f6-4472-86c5-278bb1459462",
|
|
"name": "In House",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "8a0184b4-34e4-4552-93d7-fec5fbda2f9f",
|
|
"joblineid": "ea2002b9-41f2-4a50-8757-371e333406b4",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900500",
|
|
"id": "ea2002b9-41f2-4a50-8757-371e333406b4",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP26",
|
|
"line_desc": "REPAIR PLANNING & DOCUMENTATION",
|
|
"line_ind": "E",
|
|
"line_no": 35,
|
|
"line_ref": 3,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "PAINTLESS DENT REPAIR",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAS",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 3,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900500",
|
|
"id": "a3954c53-5d55-4163-8d91-373c89453633",
|
|
"ioucreated": false,
|
|
"lbr_amt": 26.84,
|
|
"lbr_op": "OP6",
|
|
"line_desc": "TINT COLOUR",
|
|
"line_ind": "E",
|
|
"line_no": 36,
|
|
"line_ref": 5,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0.3,
|
|
"mod_lbr_ty": "LAR",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REFINISH",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAE",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 5,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 300,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": "Sublet",
|
|
"assigned_team": null,
|
|
"billlines": [
|
|
{
|
|
"actual_cost": 240,
|
|
"actual_price": 300,
|
|
"bill": {
|
|
"id": "b244fa89-c8e8-49ed-bccd-e5bc1ffb891b",
|
|
"invoice_number": "169291",
|
|
"vendor": {
|
|
"id": "377a732f-6285-4937-b110-bc11984541c4",
|
|
"name": "CAPILANO AUDI INC.",
|
|
"__typename": "vendors"
|
|
},
|
|
"__typename": "bills"
|
|
},
|
|
"id": "225ad893-6285-46a5-a2cb-82735a4edf21",
|
|
"joblineid": "7a9fb964-807a-4b4c-8b6a-715462b2ac45",
|
|
"quantity": 1,
|
|
"__typename": "billlines"
|
|
}
|
|
],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900500",
|
|
"id": "7a9fb964-807a-4b4c-8b6a-715462b2ac45",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP26",
|
|
"line_desc": "ADAS CALIBRATION STATIC",
|
|
"line_ind": "E",
|
|
"line_no": 37,
|
|
"line_ref": 21,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": "LAB",
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "PAINTLESS DENT REPAIR",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": "PAS",
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": "Received",
|
|
"tax_part": true,
|
|
"unq_seq": 21,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
},
|
|
{
|
|
"act_price": 0,
|
|
"act_price_before_ppc": null,
|
|
"ah_detail_line": false,
|
|
"alt_partm": null,
|
|
"alt_partno": null,
|
|
"assigned_team": null,
|
|
"billlines": [],
|
|
"convertedtolbr": false,
|
|
"critical": false,
|
|
"db_hrs": 0,
|
|
"db_price": 0,
|
|
"db_ref": "900501",
|
|
"id": "5eafbf12-5502-40a0-8b23-e6376acbfc17",
|
|
"ioucreated": false,
|
|
"lbr_amt": 0,
|
|
"lbr_op": "OP0",
|
|
"line_desc": "Adaptive Cruise Control -- ADAS OEM REQU",
|
|
"line_ind": "E",
|
|
"line_no": 38,
|
|
"line_ref": 21,
|
|
"location": null,
|
|
"manual_line": false,
|
|
"mod_lb_hrs": 0,
|
|
"mod_lbr_ty": null,
|
|
"notes": null,
|
|
"oem_partno": null,
|
|
"op_code_desc": "REMOVE / REPLACE PARTIAL",
|
|
"parts_dispatch_lines": [],
|
|
"part_qty": 1,
|
|
"part_type": null,
|
|
"prt_dsmk_m": 0,
|
|
"prt_dsmk_p": 0,
|
|
"status": null,
|
|
"tax_part": false,
|
|
"unq_seq": 22,
|
|
"include_in_part_cnt": false,
|
|
"__typename": "joblines"
|
|
}
|
|
],
|
|
"kmin": 23959,
|
|
"kmout": null,
|
|
"labor_rate_desc": "EST",
|
|
"lbr_adjustments": {},
|
|
"local_tax_rate": null,
|
|
"loss_date": "2025-12-23",
|
|
"loss_desc": "Other",
|
|
"loss_of_use": "RS+ ",
|
|
"lost_sale_reason": null,
|
|
"materials": {
|
|
"mapa": {
|
|
"cal_maxdlr": 9999.99,
|
|
"cal_opcode": "OP13"
|
|
},
|
|
"mash": {
|
|
"cal_maxdlr": 9999.99,
|
|
"cal_opcode": "OP13"
|
|
}
|
|
},
|
|
"other_amount_payable": null,
|
|
"owner": {
|
|
"id": "20615805-d911-4998-aa38-d0fcd08e49b2",
|
|
"note": null,
|
|
"ownr_addr1": "6500 CHATSWORTH RD",
|
|
"ownr_addr2": null,
|
|
"ownr_city": "RICHMOND",
|
|
"ownr_co_nm": null,
|
|
"ownr_ctry": null,
|
|
"ownr_ea": "fengwenilucy@gmail.com",
|
|
"ownr_fn": "KUN",
|
|
"ownr_ln": "LIN",
|
|
"ownr_ph1": "6043796180",
|
|
"ownr_ph2": "7789556180",
|
|
"ownr_ph1_ty": null,
|
|
"ownr_ph2_ty": null,
|
|
"ownr_st": "BC",
|
|
"ownr_zip": "V7C 3S3",
|
|
"tax_number": null,
|
|
"__typename": "owners"
|
|
},
|
|
"ownerid": "20615805-d911-4998-aa38-d0fcd08e49b2",
|
|
"owner_owing": 300,
|
|
"ownr_addr1": "6500 CHATSWORTH RD",
|
|
"ownr_addr2": null,
|
|
"ownr_city": "RICHMOND",
|
|
"ownr_co_nm": null,
|
|
"ownr_ctry": null,
|
|
"ownr_ea": "fengwenilucy@gmail.com",
|
|
"ownr_fn": "KUN",
|
|
"ownr_ln": "LIN",
|
|
"ownr_ph1": "6043796180",
|
|
"ownr_ph2": "7789556180",
|
|
"ownr_ph1_ty": null,
|
|
"ownr_ph2_ty": null,
|
|
"ownr_st": "BC",
|
|
"ownr_zip": "V7C 3S3",
|
|
"parts_tax_rates": {
|
|
"CCC": {},
|
|
"CCD": {},
|
|
"CCF": {},
|
|
"CCM": {},
|
|
"PAA": {
|
|
"prt_type": "PAA",
|
|
"prt_discp": 0,
|
|
"prt_mktyp": false,
|
|
"prt_mkupp": 0,
|
|
"prt_tax_in": true,
|
|
"prt_tax_rt": 0.07
|
|
},
|
|
"PAC": {
|
|
"prt_type": "PAC",
|
|
"prt_discp": 0,
|
|
"prt_mktyp": false,
|
|
"prt_mkupp": 0,
|
|
"prt_tax_in": true,
|
|
"prt_tax_rt": 0.07
|
|
},
|
|
"PAG": {},
|
|
"PAL": {
|
|
"prt_type": "PAL",
|
|
"prt_discp": 0,
|
|
"prt_mktyp": false,
|
|
"prt_mkupp": 0,
|
|
"prt_tax_in": true,
|
|
"prt_tax_rt": 0.07
|
|
},
|
|
"PAM": {
|
|
"prt_type": "PAM",
|
|
"prt_discp": 0,
|
|
"prt_mktyp": false,
|
|
"prt_mkupp": 0,
|
|
"prt_tax_in": true,
|
|
"prt_tax_rt": 0.07
|
|
},
|
|
"PAN": {
|
|
"prt_type": "PAN",
|
|
"prt_discp": 0,
|
|
"prt_mktyp": false,
|
|
"prt_mkupp": 0,
|
|
"prt_tax_in": true,
|
|
"prt_tax_rt": 0.07
|
|
},
|
|
"PAO": {},
|
|
"PAP": {},
|
|
"PAR": {
|
|
"prt_type": "PAR",
|
|
"prt_discp": 0,
|
|
"prt_mktyp": false,
|
|
"prt_mkupp": 0,
|
|
"prt_tax_in": true,
|
|
"prt_tax_rt": 0.07
|
|
},
|
|
"PAS": {
|
|
"prt_type": "PAS",
|
|
"prt_discp": 0,
|
|
"prt_mktyp": false,
|
|
"prt_mkupp": 0,
|
|
"prt_tax_in": true,
|
|
"prt_tax_rt": 0.07
|
|
},
|
|
"CCDR": {},
|
|
"PASL": {}
|
|
},
|
|
"payments": [
|
|
{
|
|
"amount": 300,
|
|
"created_at": "2026-01-22T00:53:01.352735+00:00",
|
|
"date": "2026-01-21",
|
|
"exportedat": "2026-01-22T23:29:19.294+00:00",
|
|
"id": "98088180-cc9f-469e-b1a1-586775aae73a",
|
|
"jobid": "62fcba91-b8df-4076-b5f5-14f8827c8f92",
|
|
"memo": null,
|
|
"payer": "Customer",
|
|
"paymentnum": "2489",
|
|
"transactionid": "075921",
|
|
"type": "Visa",
|
|
"__typename": "payments"
|
|
}
|
|
],
|
|
"plate_no": "HW815N",
|
|
"plate_st": "BC",
|
|
"po_number": null,
|
|
"policy_no": "5L.LHS",
|
|
"production_vars": {
|
|
"note": null
|
|
},
|
|
"rate_ats": null,
|
|
"rate_ats_flat": null,
|
|
"rate_la1": 97.8,
|
|
"rate_la2": 0,
|
|
"rate_la3": 107.35,
|
|
"rate_la4": 0,
|
|
"rate_laa": 107.35,
|
|
"rate_lab": 89.46,
|
|
"rate_lad": null,
|
|
"rate_lae": null,
|
|
"rate_laf": 102.27,
|
|
"rate_lag": 89.46,
|
|
"rate_lam": 115.05,
|
|
"rate_lar": 89.46,
|
|
"rate_las": 89.46,
|
|
"rate_lau": 0,
|
|
"rate_ma2s": 0,
|
|
"rate_ma2t": 0,
|
|
"rate_ma3s": 0,
|
|
"rate_mabl": null,
|
|
"rate_macs": 0,
|
|
"rate_mahw": 0,
|
|
"rate_mapa": 60.11,
|
|
"rate_mash": 7.05,
|
|
"rate_matd": null,
|
|
"referral_source": null,
|
|
"referral_source_extra": null,
|
|
"regie_number": "12984170",
|
|
"remove_from_ar": false,
|
|
"ro_number": "58117",
|
|
"scheduled_completion": "2026-01-21T22:15:39.3+00:00",
|
|
"scheduled_delivery": "2026-01-21T08:00:00+00:00",
|
|
"scheduled_in": null,
|
|
"selling_dealer": null,
|
|
"estimate_approved": "2026-01-20T19:33:34.829+00:00",
|
|
"estimate_sent_approval": "2026-01-09T23:17:39.023+00:00",
|
|
"selling_dealer_contact": null,
|
|
"servicing_dealer": null,
|
|
"servicing_dealer_contact": null,
|
|
"special_coverage_policy": false,
|
|
"state_tax_rate": null,
|
|
"status": "Exported",
|
|
"storage_payable": null,
|
|
"suspended": false,
|
|
"tax_lbr_rt": 0.07,
|
|
"tax_levies_rt": 0.07,
|
|
"tax_paint_mat_rt": 0.07,
|
|
"tax_registration_number": null,
|
|
"tax_shop_mat_rt": 0.07,
|
|
"tax_str_rt": 0.07,
|
|
"tax_sub_rt": 0.07,
|
|
"tax_tow_rt": 0.07,
|
|
"tlos_ind": false,
|
|
"towin": false,
|
|
"towing_payable": null,
|
|
"unit_number": null,
|
|
"updated_at": "2026-01-26T19:19:12.944388+00:00",
|
|
"v_color": "Navarra Blue",
|
|
"v_make_desc": "Audi",
|
|
"v_model_yr": "18",
|
|
"v_model_desc": "SQ5",
|
|
"v_vin": "WA1A4AFY5J2082044",
|
|
"notes": [],
|
|
"vehicle": {
|
|
"id": "5a834070-9cf4-420d-90a4-08df96303af4",
|
|
"jobs": [
|
|
{
|
|
"clm_no": "DA37868-0-A",
|
|
"id": "62fcba91-b8df-4076-b5f5-14f8827c8f92",
|
|
"ro_number": "58117",
|
|
"status": "Exported",
|
|
"__typename": "jobs"
|
|
}
|
|
],
|
|
"notes": null,
|
|
"plate_no": "HW815N",
|
|
"plate_st": "BC",
|
|
"v_color": "LX5H Navarra Blue",
|
|
"v_make_desc": "Audi",
|
|
"v_model_yr": "18",
|
|
"v_model_desc": "SQ5",
|
|
"v_paint_codes": {
|
|
"paint_cd1": "LX5H Navarra Blue",
|
|
"paint_cd2": null
|
|
},
|
|
"v_vin": "WA1A4AFY5J2082044",
|
|
"__typename": "vehicles"
|
|
},
|
|
"vehicleid": "5a834070-9cf4-420d-90a4-08df96303af4",
|
|
"voided": false,
|
|
"__typename": "jobs"
|
|
} |