From 193c9c119a464dbe2c3c0328377da24cd1bd8b1b Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 21 Jul 2025 13:01:06 +0300 Subject: [PATCH] filter out the active voucher from swapToList --- handlers/application/poolswap.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/handlers/application/poolswap.go b/handlers/application/poolswap.go index 9f1c9bb..a226d33 100644 --- a/handlers/application/poolswap.go +++ b/handlers/application/poolswap.go @@ -10,6 +10,7 @@ import ( "git.grassecon.net/grassrootseconomics/sarafu-vise/config" "git.grassecon.net/grassrootseconomics/sarafu-vise/store" storedb "git.grassecon.net/grassrootseconomics/sarafu-vise/store/db" + dataserviceapi "github.com/grassrootseconomics/ussd-data-service/pkg/api" "gopkg.in/leonelquinteros/gotext.v1" ) @@ -121,7 +122,16 @@ func (h *MenuHandlers) LoadSwapToList(ctx context.Context, sym string, input []b return res, nil } - data := store.ProcessVouchers(swapToList) + // Filter out the active voucher from swapToList + filteredSwapToList := make([]dataserviceapi.TokenHoldings, 0, len(swapToList)) + for _, s := range swapToList { + if s.TokenSymbol != string(activeSym) { + filteredSwapToList = append(filteredSwapToList, s) + } + } + + // Store filtered swap to list data (excluding the current active voucher) + data := store.ProcessVouchers(filteredSwapToList) logg.InfoCtxf(ctx, "ProcessVouchers", "data", data)