27 lines
841 B
JavaScript
27 lines
841 B
JavaScript
/**
|
|
* Extrai e valida informações de mudança de status do Lead a partir do dynamicBodyRequest.
|
|
* - newStatus: deve ser string não vazia
|
|
* - leadId: opcional; se ausente, pode ser fornecido externamente (ex.: contactId)
|
|
*/
|
|
function extractLeadStatusChange(dynamicBodyRequest = {}) {
|
|
if (!dynamicBodyRequest || typeof dynamicBodyRequest !== 'object') {
|
|
return { shouldUpdate: false }
|
|
}
|
|
|
|
const rawStatus = dynamicBodyRequest.__newLeadStatus
|
|
const rawLeadId = dynamicBodyRequest.__leadId
|
|
|
|
const newStatus = typeof rawStatus === 'string' ? rawStatus.trim() : ''
|
|
const leadId = typeof rawLeadId === 'string' ? rawLeadId.trim() : undefined
|
|
|
|
if (!newStatus) {
|
|
return { shouldUpdate: false }
|
|
}
|
|
|
|
return { shouldUpdate: true, newStatus, leadId }
|
|
}
|
|
|
|
module.exports = extractLeadStatusChange
|
|
|
|
|