diff --git a/app/utils/sendStatusOtherSystem.js b/app/utils/sendStatusOtherSystem.js index 75eef5b..2584952 100644 --- a/app/utils/sendStatusOtherSystem.js +++ b/app/utils/sendStatusOtherSystem.js @@ -889,6 +889,23 @@ const checkMultipleRequest = async () => { }); }; + const sortArray = (data) => { + data.sort((a, b) => { + if (a.group === b.group) { + return a.name.localeCompare(b.name); + } + return a.group.localeCompare(b.group); + }); + + // Đưa group "Other Systems" xuống cuối + data.sort((a, b) => { + if (a.group === "Other Systems") return 1; + if (b.group === "Other Systems") return -1; + return 0; + }); + + return data + }; const promises = requests.map(async (req, index) => { if (req.method === "POST") { await axios @@ -896,7 +913,7 @@ const checkMultipleRequest = async () => { headers: req.headers, }) .then((response) => { - allResponse += JSON.stringify(req.name + "\n" + response.data); + allResponse += JSON.stringify(req.name + "\n" + response.data, null, 2); console.log(response.data); // Xử lý response ở đây // console.log("Response:", response.data.length); @@ -957,7 +974,7 @@ const checkMultipleRequest = async () => { headers: req.headers, }) .then((response) => { - allResponse += JSON.stringify(req.name + "\n" + response.data); + allResponse += JSON.stringify(req.name + "\n" + response.data, null, 2); // Xử lý response ở đây // console.log("Response:", response.data.length); // console.log("Status:", response.status); @@ -979,7 +996,7 @@ const checkMultipleRequest = async () => { if (req.method === "SSH") { const stdout = await runExec(req.url); if (stdout !== "") { - allResponse += JSON.stringify(req.name + "\n" + stdout); + allResponse += JSON.stringify(req.name + "\n" + stdout, null, 2); if (req.name === "Perthmint") { if (stdout.toString().split("true").length - 1 > 1) { report.push({ @@ -1001,7 +1018,7 @@ const checkMultipleRequest = async () => { } } else { console.log(stderr); - allResponse += JSON.stringify(req.name + "\n" + stderr); + allResponse += JSON.stringify(req.name + "\n" + stderr, null, 2); report.push({ group: req.group, name: req.name, @@ -1014,18 +1031,12 @@ const checkMultipleRequest = async () => { }); await Promise.all(promises); - let listShipping = report - .filter((i) => i.group === "Shipping System") - .sort((a, b) => a.group.localeCompare(b.group)); - report = report - .filter((i) => i.group !== "Shipping System") - .concat(listShipping) - .sort((a, b) => a.group.localeCompare(b.group)); - let groupName = report?.sort((a, b) => a.group.localeCompare(b.group))[0] + + let groupName = sortArray(report)[0] ?.group; let no = 0; content += "||**" + groupName + "**|||\n"; - report?.map((u, index) => { + sortArray(report).map((u, index) => { no += 1; if (u.group === groupName) { content += @@ -1055,13 +1066,13 @@ const checkMultipleRequest = async () => { }; client.messages.send(params); - client.messages.send(params1); + // client.messages.send(params1); allResponse += report .sort((a, b) => a.group.localeCompare(b.group)) .join("\n"); fs.writeFileSync("/home/logs/logSystems.txt", allResponse); - console.log(report.sort((a, b) => a.group.localeCompare(b.group))); + console.log(sortArray(report)); } catch (error) { console.log(error); if (