perf(wai): 数据不要被空值覆盖

dev/supplier-email-drawer
Lei OT 7 months ago
parent a7c941a5da
commit 83408b0efb

@ -8,7 +8,7 @@ const { sessionStore } = require('..');
const { createWhatsApp } = require('../../core/baileys'); const { createWhatsApp } = require('../../core/baileys');
const { updateConnection, addCurrentConnection, resetConnection, getConnection } = require('../../services/connections.service'); const { updateConnection, addCurrentConnection, resetConnection, getConnection } = require('../../services/connections.service');
const { getOutboundMessage, upsertOutboundMessage } = require('../../services/outbound_messages.service'); const { getOutboundMessage, upsertOutboundMessage } = require('../../services/outbound_messages.service');
const { objectMapper, pick, isEmpty } = require('../../utils/commons.util'); const { objectMapper, pick, isEmpty, omitEmpty } = require('../../utils/commons.util');
const { logger, getUserLogger } = require('../../utils/logger.util'); const { logger, getUserLogger } = require('../../utils/logger.util');
const { DbData, waiContentToDB, uploadMediaFile } = require('../../helper/wai.msg.helper'); const { DbData, waiContentToDB, uploadMediaFile } = require('../../helper/wai.msg.helper');
@ -178,10 +178,8 @@ const setupMessageHandler = () => {
waiContentFieldsToDB.IVADS_link = webLink; waiContentFieldsToDB.IVADS_link = webLink;
} }
const msgRow = await upsertOutboundMessage( const readyUpsert = omitEmpty({ ...timeFields, ...pusher, ...waiContentFieldsToDB, ...record });
{ ...timeFields, ...upsertFields, ...pusher, ...waiContentFieldsToDB, ...record, ...typeField, message_origin: savedMsg?.message_origin || JSON.stringify(messageData) }, const msgRow = await upsertOutboundMessage({ ...upsertFields, ...readyUpsert, ...typeField, message_origin: savedMsg?.message_origin || JSON.stringify(messageData) }, targetUpsert);
targetUpsert,
);
// 把内容加上, 否则前端没显示 // 把内容加上, 否则前端没显示
await callWebhook(webhookBodyFill(webhookBody, msgRow)); await callWebhook(webhookBodyFill(webhookBody, msgRow));
} catch (error) { } catch (error) {

@ -426,6 +426,15 @@ exports.flush = (collection) => {
return undefined; return undefined;
} }
/**
* 去除无效的值: undefined, null, '', []
* * 只删除 null undefined: flush 方法;
*/
exports.omitEmpty = _object => {
Object.keys(_object).forEach(key => (_object[key] == null || _object[key] === '' || _object[key].length === 0) && delete _object[key]);
return _object;
};
/** /**
* 千分位 格式化数字 * 千分位 格式化数字
*/ */

Loading…
Cancel
Save