feature/IO-3357-Reynolds-and-Reynolds-DMS-API-Integration - Enhance logging
This commit is contained in:
@@ -9,7 +9,8 @@ const CreateRRLogEvent = require("./rr-logger-event");
|
||||
* @returns {Promise<{success, data: *, roStatus: *, statusBlocks,customerNo: string, svId: null, roNo: *}>}
|
||||
*/
|
||||
const exportJobToRR = async (args) => {
|
||||
const { bodyshop, job, advisorNo, selectedCustomer, existing, socket } = args || {};
|
||||
const { bodyshop, job, advisorNo, selectedCustomer, txEnvelope, socket } = args || {};
|
||||
const existing = txEnvelope?.existing || {};
|
||||
|
||||
if (!bodyshop) throw new Error("exportJobToRR: bodyshop is required");
|
||||
if (!job) throw new Error("exportJobToRR: job is required");
|
||||
@@ -22,6 +23,7 @@ const exportJobToRR = async (args) => {
|
||||
if (!selected) throw new Error("exportJobToRR: selectedCustomer.custNo/customerNo is required");
|
||||
|
||||
const { client, opts } = buildClientAndOpts(bodyshop);
|
||||
|
||||
const finalOpts = {
|
||||
...opts,
|
||||
envelope: {
|
||||
@@ -37,6 +39,7 @@ const exportJobToRR = async (args) => {
|
||||
|
||||
// Ensure service vehicle for create flows (best-effort)
|
||||
let svId = null;
|
||||
|
||||
if (!(existing?.roNo || existing?.dmsRoNo || existing?.dmsRepairOrderId)) {
|
||||
try {
|
||||
const svRes = await ensureRRServiceVehicle({
|
||||
@@ -53,11 +56,16 @@ const exportJobToRR = async (args) => {
|
||||
}
|
||||
}
|
||||
|
||||
const story = txEnvelope?.story ? String(txEnvelope.story).trim() : null;
|
||||
const makeOverride = txEnvelope?.makeOverride ? String(txEnvelope.makeOverride).trim() : null;
|
||||
|
||||
// Build RO payload for create/update
|
||||
const payload = buildRRRepairOrderPayload({
|
||||
job,
|
||||
selectedCustomer: { customerNo: String(selected), custNo: String(selected) },
|
||||
advisorNo: String(advisorNo)
|
||||
advisorNo: String(advisorNo),
|
||||
story,
|
||||
makeOverride
|
||||
});
|
||||
|
||||
// Canonical update key is "roNo" (prefer DMS RO number); accept fallbacks from "existing"
|
||||
@@ -68,6 +76,7 @@ const exportJobToRR = async (args) => {
|
||||
: await client.createRepairOrder(payload, finalOpts);
|
||||
|
||||
CreateRRLogEvent(socket, "INFO", `RR raw Repair Order ${roNoForUpdate ? "updated" : "created"}`, {
|
||||
payload,
|
||||
response
|
||||
});
|
||||
|
||||
@@ -150,6 +159,12 @@ const finalizeRRRepairOrder = async (args) => {
|
||||
});
|
||||
|
||||
const rrRes = await client.updateRepairOrder(payload, finalOpts);
|
||||
|
||||
CreateRRLogEvent(socket, "SILLY", "RR Repair Order finalized", {
|
||||
payload,
|
||||
response: rrRes
|
||||
});
|
||||
|
||||
const data = rrRes?.data || null;
|
||||
const roStatus = data?.roStatus || null;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user