From dc747847f4146be01031253727ccf31b5d0ae131 Mon Sep 17 00:00:00 2001 From: ze97286 Date: Wed, 4 Sep 2024 17:35:50 +0100 Subject: [PATCH] fix: set the tier number in party stats tiers --- datanode/service/party_stats.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/datanode/service/party_stats.go b/datanode/service/party_stats.go index 5bd49ec0e4..9dd02a31af 100644 --- a/datanode/service/party_stats.go +++ b/datanode/service/party_stats.go @@ -257,10 +257,12 @@ func (s *PSvc) getReferralTier(ctx context.Context, stats entities.FlattenReferr if err != nil { return nil, err } - for _, bt := range current.BenefitTiers { + for i, bt := range current.BenefitTiers { if bt.ReferralRewardFactors.InfrastructureRewardFactor == stats.RewardFactors.InfrastructureRewardFactor && bt.ReferralRewardFactors.LiquidityRewardFactor == stats.RewardFactors.LiquidityRewardFactor && bt.ReferralRewardFactors.MakerRewardFactor == stats.RewardFactors.MakerRewardFactor { + tierNumber := uint64(i) + bt.TierNumber = &tierNumber return bt, nil } } @@ -279,10 +281,11 @@ func (s *PSvc) getVolumeDiscountTier(ctx context.Context, stats entities.Flatten if err != nil { return nil, err } - for i := len(current.BenefitTiers) - 1; i >= 0; i-- { + for i := uint64(len(current.BenefitTiers)) - 1; i >= uint64(0); i-- { dt := current.BenefitTiers[i] minV, _ := num.DecimalFromString(dt.MinimumRunningNotionalTakerVolume) if vol.GreaterThanOrEqual(minV) { + dt.TierNumber = &i return dt, nil } } @@ -298,10 +301,11 @@ func (s *PSvc) getVolumeRebateTier(ctx context.Context, stats entities.FlattenVo if err != nil { return nil, err } - for i := len(current.BenefitTiers) - 1; i >= 0; i-- { + for i := uint64(len(current.BenefitTiers)) - 1; i >= uint64(0); i-- { bt := current.BenefitTiers[i] minF, _ := num.DecimalFromString(bt.MinimumPartyMakerVolumeFraction) if vf.GreaterThanOrEqual(minF) { + bt.TierNumber = &i return bt, nil } }