Files
bodyshop/server/rr/rr-job-export.js

30 lines
920 B
JavaScript

const { buildRRRepairOrderPayload } = require("./rr-job-helpers");
const { buildClientAndOpts } = require("./rr-lookup");
async function exportJobToRR(args) {
const { bodyshop, job, selectedCustomer, advisorNo, existing } = args;
// Build client + opts (opts carries routing)
const { client, opts } = buildClientAndOpts(bodyshop);
const payload = buildRRRepairOrderPayload({ job, selectedCustomer, advisorNo });
let rrRes;
if (existing?.dmsRepairOrderId) {
rrRes = await client.updateRepairOrder({ ...payload, dmsRepairOrderId: existing.dmsRepairOrderId }, opts);
} else {
rrRes = await client.createRepairOrder(payload, opts);
}
return {
success: rrRes?.success === true,
data: rrRes?.data || null,
roStatus: rrRes?.data?.roStatus || null,
statusBlocks: rrRes?.statusBlocks || [],
xml: rrRes?.xml,
parsed: rrRes?.parsed
};
}
module.exports = { exportJobToRR };