case 'wdp': { const nomor = sender.split("@")[0]; const productData = JSON.parse( fs.readFileSync('./db/datagz.json', 'utf8') ); const userData = JSON.parse(fs.readFileSync('./db/users.json')); const userProfile = userData.find((user) => user.nomor === nomor); if (!userProfile) return m.reply(`Kamu belum terdaftar, silahkan ketik : *Daftar*\nuntuk bisa mengakses`); const matchingProducts = productData.filter(item => item.nama_layanan.toLowerCase().includes('weekly') ); if (matchingProducts.length === 0) { return m.reply(`Tidak ada produk untuk kategori *Weekly*`); } matchingProducts.sort((a, b) => parseInt(a.harga) - parseInt(b.harga)); const { role } = userProfile; let formattedResponse = `Hallo *${pushname}* Role Kamu *${role}*\nBerikut LIST *WEEKLY* Untukmu\n\n`; formattedResponse += `*Cara Beli :*\nTrx [Kode] [Tujuan]\n`; formattedResponse += `*Contoh :*\nTrx MLPHWDP 123456789\n\n`; const rupiah = (amount) => `Rp ${parseInt(amount).toLocaleString('id-ID')}`; matchingProducts.forEach(product => { let markupPercentage = defaultMarkupPercentage; if (userProfile.role === "GOLD") { markupPercentage = markupConfig.gold; } else if (userProfile.role === "PLATINUM") { markupPercentage = markupConfig.platinum; } else if (userProfile.role === "BRONZE") { markupPercentage = markupConfig.bronze; } else if (userProfile.role === "OWNER") { markupPercentage = markupConfig.owner; } const originalPrice = parseFloat(product.harga); const increasedPrice = originalPrice * (1 + markupPercentage); const adjustedPrice = Math.round(increasedPrice); formattedResponse += `*🛍️ ${product.nama_layanan}.* > *Kode :* ${product.kode} > *Harga :* ${rupiah(adjustedPrice)} > *Status :* ${product.status === 'available' ? 'Tersedia' : 'Gangguan'} \n`; }); xstbot.sendMessage(m.chat, { text: formattedResponse }, { quoted: m }); } break;