This commit is contained in:
parent
da200c882f
commit
77755eba61
@ -2,6 +2,7 @@ const {
|
|||||||
SlashCommandBuilder,
|
SlashCommandBuilder,
|
||||||
ActionRowBuilder,
|
ActionRowBuilder,
|
||||||
StringSelectMenuBuilder,
|
StringSelectMenuBuilder,
|
||||||
|
EmbedBuilder, // Adicionando o EmbedBuilder para usar no embed
|
||||||
} = require('discord.js');
|
} = require('discord.js');
|
||||||
const conn = require('../../../database/db');
|
const conn = require('../../../database/db');
|
||||||
|
|
||||||
@ -48,6 +49,46 @@ const {
|
|||||||
components: [row],
|
components: [row],
|
||||||
ephemeral: true,
|
ephemeral: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Parte adicional que recupera e exibe informações de usuários e suas metas
|
||||||
|
try {
|
||||||
|
const [usersRows] = await conn.execute('SELECT u.id, u.discord_id, u.discord_username, u.nig, u.meta, c.name AS nomedocargo FROM users u JOIN choices c ON u.cargo = c.value ORDER BY c.id DESC');
|
||||||
|
const embed = new EmbedBuilder().setColor("#00b0f4");
|
||||||
|
|
||||||
|
// Adiciona cada usuário como um campo no embed
|
||||||
|
usersRows.forEach(row => {
|
||||||
|
let metas = {};
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (row.meta) {
|
||||||
|
metas = JSON.parse(row.meta);
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
console.warn('JSON mal formatado para usuário:', row.discord_username);
|
||||||
|
}
|
||||||
|
|
||||||
|
let metasText = '';
|
||||||
|
for (const [nomejson, dados] of Object.entries(metas)) {
|
||||||
|
if (typeof dados === 'object' && dados !== null && 'alvo' in dados && 'atual' in dados) {
|
||||||
|
metasText += `* *${nomejson}:* \`${dados.atual} / ${dados.alvo}\`\n`;
|
||||||
|
} else {
|
||||||
|
metasText += `* *${nomejson}:* \`formato inválido\`\n`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
embed.addFields({
|
||||||
|
name: '',
|
||||||
|
value: `\n\n> **${row.nig}** \n > <@${row.discord_id}>\n **Cargo:** \`${row.nomedocargo}\` \n**Meta Semanal:** \n${metasText}\n\n`,
|
||||||
|
inline: true
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
await interaction.editReply({ embeds: [embed] });
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Erro ao buscar usuários:', error);
|
||||||
|
await interaction.editReply({ content: '❌ Erro ao carregar informações dos usuários.' });
|
||||||
|
}
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user