fix: use sdk.Int when loading augmented cdp (#539)

This commit is contained in:
Kevin Davis 2020-06-03 18:36:58 -04:00 committed by GitHub
parent 4a8b5696cb
commit aebb3093ff
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -439,17 +439,10 @@ func (k Keeper) LoadAugmentedCDP(ctx sdk.Context, cdp types.CDP) types.Augmented
if err != nil {
return types.AugmentedCDP{CDP: cdp}
}
// total debt is the sum of all outstanding principal and fees
var totalDebt int64
totalDebt += cdp.Principal.Amount.Int64()
totalDebt += cdp.AccumulatedFees.Amount.Int64()
// convert collateral value to debt coin
debtBaseAdjusted := sdk.NewDec(totalDebt).QuoInt64(BaseDigitFactor)
collateralValueInDebtDenom := collateralizationRatio.Mul(debtBaseAdjusted)
collateralValueInDebt := sdk.NewInt64Coin(cdp.Principal.Denom, collateralValueInDebtDenom.Int64())
totalDebt := cdp.Principal.Amount.Add(cdp.AccumulatedFees.Amount)
collateralValueInDebtDenom := sdk.NewDecFromInt(totalDebt).Mul(collateralizationRatio)
collateralValueInDebt := sdk.NewCoin(cdp.Principal.Denom, collateralValueInDebtDenom.RoundInt())
// create new augmuented cdp
augmentedCDP := types.NewAugmentedCDP(cdp, collateralValueInDebt, collateralizationRatio)
return augmentedCDP