140 lines
5.1 KiB
TypeScript
140 lines
5.1 KiB
TypeScript
export default defineEventHandler(async (event) => {
|
|
const xTagHeader = getRequestHeader(event, "x-tag");
|
|
|
|
if (!xTagHeader || (xTagHeader !== "094ut234" && xTagHeader !== "pjnvü1230")) {
|
|
throw createError({ statusCode: 401, statusMessage: "unauthenticated" });
|
|
}
|
|
|
|
try {
|
|
const query = getQuery(event);
|
|
const { interestId } = query;
|
|
|
|
if (!interestId) {
|
|
throw createError({
|
|
statusCode: 400,
|
|
statusMessage: 'Interest ID is required',
|
|
});
|
|
}
|
|
|
|
console.log('[Test EOI Cleanup] Starting cleanup test for interest:', interestId);
|
|
|
|
// First, check current state
|
|
const beforeUpdate = await getInterestById(interestId.toString());
|
|
console.log('[Test EOI Cleanup] BEFORE UPDATE - Current state:', {
|
|
documensoID: beforeUpdate['documensoID'],
|
|
signatureLinks: {
|
|
client: beforeUpdate['Signature Link Client'],
|
|
cc: beforeUpdate['Signature Link CC'],
|
|
developer: beforeUpdate['Signature Link Developer']
|
|
},
|
|
embeddedLinks: {
|
|
client: beforeUpdate['EmbeddedSignatureLinkClient'],
|
|
cc: beforeUpdate['EmbeddedSignatureLinkCC'],
|
|
developer: beforeUpdate['EmbeddedSignatureLinkDeveloper']
|
|
},
|
|
eoiStatus: beforeUpdate['EOI Status'],
|
|
salesLevel: beforeUpdate['Sales Process Level']
|
|
});
|
|
|
|
// Prepare the cleanup data - trying different approaches
|
|
const cleanupData = {
|
|
'EOI Status': 'Awaiting Further Details' as EOIStatus,
|
|
'Sales Process Level': 'Specific Qualified Interest' as InterestSalesProcessLevel,
|
|
'EOI Time Sent': undefined,
|
|
'Signature Link Client': undefined,
|
|
'Signature Link CC': undefined,
|
|
'Signature Link Developer': undefined,
|
|
'EmbeddedSignatureLinkClient': undefined,
|
|
'EmbeddedSignatureLinkCC': undefined,
|
|
'EmbeddedSignatureLinkDeveloper': undefined,
|
|
'documensoID': undefined
|
|
};
|
|
|
|
console.log('[Test EOI Cleanup] Cleanup data to send:', cleanupData);
|
|
|
|
// Perform the update
|
|
await updateInterest(interestId.toString(), cleanupData);
|
|
|
|
console.log('[Test EOI Cleanup] Update completed, checking result...');
|
|
|
|
// Check the state after update
|
|
const afterUpdate = await getInterestById(interestId.toString());
|
|
console.log('[Test EOI Cleanup] AFTER UPDATE - New state:', {
|
|
documensoID: afterUpdate['documensoID'],
|
|
signatureLinks: {
|
|
client: afterUpdate['Signature Link Client'],
|
|
cc: afterUpdate['Signature Link CC'],
|
|
developer: afterUpdate['Signature Link Developer']
|
|
},
|
|
embeddedLinks: {
|
|
client: afterUpdate['EmbeddedSignatureLinkClient'],
|
|
cc: afterUpdate['EmbeddedSignatureLinkCC'],
|
|
developer: afterUpdate['EmbeddedSignatureLinkDeveloper']
|
|
},
|
|
eoiStatus: afterUpdate['EOI Status'],
|
|
salesLevel: afterUpdate['Sales Process Level']
|
|
});
|
|
|
|
// Compare before and after
|
|
const changes = {
|
|
documensoID: {
|
|
before: beforeUpdate['documensoID'],
|
|
after: afterUpdate['documensoID'],
|
|
changed: beforeUpdate['documensoID'] !== afterUpdate['documensoID']
|
|
},
|
|
signatureLinks: {
|
|
client: {
|
|
before: beforeUpdate['Signature Link Client'],
|
|
after: afterUpdate['Signature Link Client'],
|
|
changed: beforeUpdate['Signature Link Client'] !== afterUpdate['Signature Link Client']
|
|
},
|
|
cc: {
|
|
before: beforeUpdate['Signature Link CC'],
|
|
after: afterUpdate['Signature Link CC'],
|
|
changed: beforeUpdate['Signature Link CC'] !== afterUpdate['Signature Link CC']
|
|
},
|
|
developer: {
|
|
before: beforeUpdate['Signature Link Developer'],
|
|
after: afterUpdate['Signature Link Developer'],
|
|
changed: beforeUpdate['Signature Link Developer'] !== afterUpdate['Signature Link Developer']
|
|
}
|
|
},
|
|
embeddedLinks: {
|
|
client: {
|
|
before: beforeUpdate['EmbeddedSignatureLinkClient'],
|
|
after: afterUpdate['EmbeddedSignatureLinkClient'],
|
|
changed: beforeUpdate['EmbeddedSignatureLinkClient'] !== afterUpdate['EmbeddedSignatureLinkClient']
|
|
},
|
|
cc: {
|
|
before: beforeUpdate['EmbeddedSignatureLinkCC'],
|
|
after: afterUpdate['EmbeddedSignatureLinkCC'],
|
|
changed: beforeUpdate['EmbeddedSignatureLinkCC'] !== afterUpdate['EmbeddedSignatureLinkCC']
|
|
},
|
|
developer: {
|
|
before: beforeUpdate['EmbeddedSignatureLinkDeveloper'],
|
|
after: afterUpdate['EmbeddedSignatureLinkDeveloper'],
|
|
changed: beforeUpdate['EmbeddedSignatureLinkDeveloper'] !== afterUpdate['EmbeddedSignatureLinkDeveloper']
|
|
}
|
|
}
|
|
};
|
|
|
|
console.log('[Test EOI Cleanup] Change analysis:', changes);
|
|
|
|
return {
|
|
success: true,
|
|
message: 'EOI cleanup test completed',
|
|
before: beforeUpdate,
|
|
after: afterUpdate,
|
|
changes,
|
|
cleanupData
|
|
};
|
|
|
|
} catch (error: any) {
|
|
console.error('[Test EOI Cleanup] Failed:', error);
|
|
throw createError({
|
|
statusCode: error.statusCode || 500,
|
|
statusMessage: error.statusMessage || error.message || 'Failed to test EOI cleanup',
|
|
});
|
|
}
|
|
});
|