fixing is delivered notification wa #41

Merged
bragaz_rexita merged 1 commits from wisdom into main 2026-01-12 07:37:35 +00:00
4 changed files with 33 additions and 17 deletions

View File

@@ -96,8 +96,8 @@ const getAllNotificationDb = async (searchParams = {}) => {
], ],
queryParams queryParams
); );
queryParams = whereParamAnd ? whereParamAnd : queryParams; queryParams = whereParamAnd ? whereParamAnd : queryParams;
const queryText = ` const queryText = `
SELECT SELECT
@@ -131,17 +131,17 @@ const getAllNotificationDb = async (searchParams = {}) => {
FROM notification_error a FROM notification_error a
LEFT JOIN brand_code b
ON a.error_code_id = b.error_code_id AND b.deleted_at IS NULL
LEFT JOIN brand_code_solution c
ON b.error_code_id = c.error_code_id AND c.deleted_at IS NULL
LEFT JOIN m_device d LEFT JOIN m_device d
ON a.error_chanel = d.listen_channel AND d.deleted_at IS NULL ON a.error_chanel = d.listen_channel AND d.deleted_at IS NULL
LEFT JOIN brand_code b
ON a.error_code_id = b.error_code AND b.deleted_at IS NULL AND d.brand_id = b.brand_id
LEFT JOIN brand_code_solution c
ON b.error_code_id = c.error_code_id AND c.deleted_at IS NULL
LEFT JOIN m_brands e LEFT JOIN m_brands e
ON d.brand_id = e.brand_id AND d.deleted_at IS NULL ON d.brand_id = e.brand_id AND e.deleted_at IS NULL
WHERE a.deleted_at IS NULL WHERE a.deleted_at IS NULL
${whereConditions.length > 0 ? ` AND ${whereConditions.join(" AND ")}` : ""} ${whereConditions.length > 0 ? ` AND ${whereConditions.join(" AND ")}` : ""}
@@ -173,7 +173,7 @@ const updateNotificationErrorDb = async (id, data) => {
); );
await pool.query(`${queryText} AND deleted_at IS NULL`, values); await pool.query(`${queryText} AND deleted_at IS NULL`, values);
return getNotificationByIdDb(id); return getNotificationByIdDb(id);
}; };
const getUsersNotificationErrorDb = async (id) => { const getUsersNotificationErrorDb = async (id) => {
@@ -196,7 +196,7 @@ const getUsersNotificationErrorDb = async (id) => {
WHERE a.notification_error_id = $1 WHERE a.notification_error_id = $1
AND a.deleted_at IS NULL AND a.deleted_at IS NULL
`; `;
const result = await pool.query(queryText, [id]); const result = await pool.query(queryText, [id]);
return result.recordset; return result.recordset;
}; };
@@ -208,5 +208,5 @@ module.exports = {
InsertNotificationErrorDb, InsertNotificationErrorDb,
updateNotificationErrorDb, updateNotificationErrorDb,
getUsersNotificationErrorDb getUsersNotificationErrorDb
}; };

View File

@@ -234,7 +234,7 @@ class NotificationService {
console.log("notifikasi wa:", resultSend) console.log("notifikasi wa:", resultSend)
const isSuccess = resultSend?.success ? true : false; const isSuccess = resultSend.success;
await updateNotificationErrorDb(user.notification_error_id, { await updateNotificationErrorDb(user.notification_error_id, {
is_send: isSuccess, is_send: isSuccess,

View File

@@ -152,7 +152,7 @@ class NotificationErrorUserService {
data.contact_phone, data.contact_phone,
bodyWithUrl bodyWithUrl
); );
const isSuccess = resultSend?.success ? true : false; const isSuccess = resultSend.success;
const updateData = { const updateData = {
is_send: isSuccess, is_send: isSuccess,

View File

@@ -1,5 +1,5 @@
const { getAllContactDb } = require("../db/contact.db"); const { getAllContactDb } = require("../db/contact.db");
const { InsertNotificationErrorDb } = require("../db/notification_error.db"); const { InsertNotificationErrorDb, updateNotificationErrorDb } = require("../db/notification_error.db");
const { const {
createNotificationErrorUserDb, createNotificationErrorUserDb,
updateNotificationErrorUserDb, updateNotificationErrorUserDb,
@@ -65,6 +65,8 @@ class NotifikasiWaService {
const resultNotificationError = await InsertNotificationErrorDb(data); const resultNotificationError = await InsertNotificationErrorDb(data);
let isSendNotification = false
for (const dataUser of dataUsers) { for (const dataUser of dataUsers) {
if (dataUser.is_active) { if (dataUser.is_active) {
const tokenRedirect = await generateTokenRedirect( const tokenRedirect = await generateTokenRedirect(
@@ -79,7 +81,7 @@ class NotifikasiWaService {
const bodyMessage = const bodyMessage =
`Hai ${dataUser.contact_name || "-"}\n` + `Hai ${dataUser.contact_name || "-"}\n` +
`Terjadi kode error ${chanel?.value ?? "-"} ${errorCode?.error_code_name ?? ""} Chanel ${chanel?.chanel_id ?? "-"} ` + `Terjadi kode error ${chanel?.value ?? "-"} ${errorCode?.error_code_name ?? ""}Chanel ${chanel?.chanel_id ?? "-"} ` +
`pada device ${deviceNotification?.device_name ?? "berikut" `pada device ${deviceNotification?.device_name ?? "berikut"
}, Silahkan cek detail pada link berikut:\n` + }, Silahkan cek detail pada link berikut:\n` +
`${shortUrl}`; `${shortUrl}`;
@@ -105,14 +107,28 @@ class NotifikasiWaService {
param.bodyMessage param.bodyMessage
); );
await updateNotificationErrorUserDb( await updateNotificationErrorUserDb(
resultNotificationErrorUser[0].notification_error_user_id, resultNotificationErrorUser[0].notification_error_user_id,
{ {
is_send: resultSend?.success ? true : false, is_send: resultSend.success,
} }
); );
if (resultSend.success) {
isSendNotification = resultSend.success
}
} }
} }
await updateNotificationErrorDb(
resultNotificationError.notification_error_id,
{
is_send: isSendNotification,
is_delivered: isSendNotification,
}
);
} }
} }
} catch (error) { } catch (error) {