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

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

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

@ -426,6 +426,15 @@ exports.flush = (collection) => {
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