USER_Donate_Sum - my-crypto-datascience-portfolio/my_crypto_donations_bank_solana GitHub Wiki
Реализация сумматоров и статистики для банка донатов
Для создания отчета можно ввести отдельные суммирующие аккаунты PDA (счетчики), а можно группировать выборки по всему массиву совершенных транзакций.
Суммирующие аккаунты PDA имеют смысл для хранения долгосрочной статистики. Т.к. после fee redeem, аккаунты отдельных донатов будут пропадать из блокчейна после закрытия кампаний (это нужно проверить/потестить).
Запрос выборки аккаунтов (с фильтрами)
getTokenAccounts
How to Get All Tokens Held by a Wallet in Solana
javascript:
const filters:GetProgramAccountsFilter[] = [
{
dataSize: 165, //size of account (bytes)
},
{
memcmp: {
offset: 32, //location of our query in the account (bytes)
bytes: wallet, //our search criteria, a base58 encoded string
}
}
];