diff --git a/pkg/api/event_converters.go b/pkg/api/event_converters.go index 4158d228..e342378a 100644 --- a/pkg/api/event_converters.go +++ b/pkg/api/event_converters.go @@ -67,25 +67,20 @@ func (h *Handler) convertRisk(ctx context.Context, risk wallet.Risk, walletAddre Jettons: nil, Nfts: nil, } - if len(risk.Jettons) > 0 { - wallets, err := h.storage.GetJettonWalletsByOwnerAddress(ctx, walletAddress, nil, true) - if err != nil { - return oas.Risk{}, err + for jetton, quantity := range risk.Jettons { + jettonWallets, err := h.storage.GetJettonWalletsByOwnerAddress(ctx, walletAddress, &jetton, true) + if err != nil || len(jettonWallets) == 0 { + continue } - for _, jettonWallet := range wallets { - quantity, ok := risk.Jettons[jettonWallet.Address] - if !ok { - continue - } - meta := h.GetJettonNormalizedMetadata(ctx, jettonWallet.JettonAddress) - preview := jettonPreview(jettonWallet.JettonAddress, meta) - jettonQuantity := oas.JettonQuantity{ - Quantity: quantity.String(), - WalletAddress: convertAccountAddress(jettonWallet.Address, h.addressBook), - Jetton: preview, - } - oasRisk.Jettons = append(oasRisk.Jettons, jettonQuantity) + jettonWallet := jettonWallets[0] + meta := h.GetJettonNormalizedMetadata(ctx, jettonWallet.JettonAddress) + preview := jettonPreview(jettonWallet.JettonAddress, meta) + jettonQuantity := oas.JettonQuantity{ + Quantity: quantity.String(), + WalletAddress: convertAccountAddress(jettonWallet.Address, h.addressBook), + Jetton: preview, } + oasRisk.Jettons = append(oasRisk.Jettons, jettonQuantity) } if len(risk.Nfts) > 0 { items, err := h.storage.GetNFTs(ctx, risk.Nfts)