verify maker and taker fees

This commit is contained in:
woodser 2022-12-26 13:55:35 +00:00
parent eae3060c63
commit 2d7654b8d7
21 changed files with 102 additions and 150 deletions

View file

@ -37,6 +37,7 @@ import bisq.core.offer.OfferUtil;
import bisq.core.offer.OpenOfferManager;
import bisq.core.payment.PaymentAccount;
import bisq.core.provider.price.PriceFeedService;
import bisq.core.trade.HavenoUtils;
import bisq.core.trade.handlers.TransactionResultHandler;
import bisq.core.trade.statistics.TradeStatistics3;
import bisq.core.trade.statistics.TradeStatisticsManager;
@ -674,11 +675,7 @@ public abstract class MutableOfferDataModel extends OfferDataModel {
}
public Coin getMakerFee() {
return offerUtil.getMakerFee(amount.get());
}
public Coin getMakerFeeInBtc() {
return CoinUtil.getMakerFee(amount.get());
return HavenoUtils.getMakerFee(amount.get());
}
boolean canPlaceOffer() {

View file

@ -506,7 +506,7 @@ public abstract class MutableOfferViewModel<M extends MutableOfferDataModel> ext
isTradeFeeVisible.setValue(true);
tradeFee.set(getFormatterForMakerFee().formatCoin(makerFeeAsCoin));
tradeFeeInBtcWithFiat.set(OfferViewModelUtil.getTradeFeeWithFiatEquivalent(offerUtil,
dataModel.getMakerFeeInBtc(),
dataModel.getMakerFee(),
btcFormatter));
}
@ -996,7 +996,7 @@ public abstract class MutableOfferViewModel<M extends MutableOfferDataModel> ext
public String getTradeFee() {
return OfferViewModelUtil.getTradeFeeWithFiatEquivalentAndPercentage(offerUtil,
dataModel.getMakerFeeInBtc(),
dataModel.getMakerFee(),
dataModel.getAmount().get(),
btcFormatter,
HavenoUtils.getMinMakerFee());

View file

@ -434,14 +434,7 @@ class TakeOfferDataModel extends OfferDataModel {
@Nullable
Coin getTakerFee() {
Coin amount = this.amount.get();
if (amount != null) {
// TODO write unit test for that
Coin feePerBtc = CoinUtil.getFeePerBtc(HavenoUtils.getTakerFeePerBtc(), amount);
return CoinUtil.maxCoin(feePerBtc, HavenoUtils.getMinTakerFee());
} else {
return null;
}
return HavenoUtils.getTakerFee(this.amount.get());
}
public void swapTradeToSavings() {
@ -523,8 +516,4 @@ class TakeOfferDataModel extends OfferDataModel {
public boolean isUsingHalCashAccount() {
return paymentAccount.hasPaymentMethodWithId(HAL_CASH_ID);
}
public Coin getTakerFeeInBtc() {
return offerUtil.getTakerFee(amount.get());
}
}

View file

@ -547,7 +547,7 @@ public class TakeOfferView extends ActivatableViewAndModel<AnchorPane, TakeOffer
priceCurrencyLabel.textProperty().bind(createStringBinding(() -> CurrencyUtil.getCounterCurrency(model.dataModel.getCurrencyCode())));
priceAsPercentageLabel.prefWidthProperty().bind(priceCurrencyLabel.widthProperty());
nextButton.disableProperty().bind(model.isNextButtonDisabled);
tradeFeeInBtcLabel.textProperty().bind(model.tradeFeeInBtcWithFiat);
tradeFeeInBtcLabel.textProperty().bind(model.tradeFeeInXmrWithFiat);
tradeFeeDescriptionLabel.textProperty().bind(model.tradeFeeDescription);
tradeFeeInBtcLabel.visibleProperty().bind(model.isTradeFeeVisible);
tradeFeeDescriptionLabel.visibleProperty().bind(model.isTradeFeeVisible);

View file

@ -103,7 +103,7 @@ class TakeOfferViewModel extends ActivatableWithDataModel<TakeOfferDataModel> im
final StringProperty offerWarning = new SimpleStringProperty();
final StringProperty spinnerInfoText = new SimpleStringProperty("");
final StringProperty tradeFee = new SimpleStringProperty();
final StringProperty tradeFeeInBtcWithFiat = new SimpleStringProperty();
final StringProperty tradeFeeInXmrWithFiat = new SimpleStringProperty();
final StringProperty tradeFeeDescription = new SimpleStringProperty();
final BooleanProperty isTradeFeeVisible = new SimpleBooleanProperty(false);
@ -283,8 +283,8 @@ class TakeOfferViewModel extends ActivatableWithDataModel<TakeOfferDataModel> im
isTradeFeeVisible.setValue(true);
tradeFee.set(getFormatterForTakerFee().formatCoin(takerFeeAsCoin));
tradeFeeInBtcWithFiat.set(OfferViewModelUtil.getTradeFeeWithFiatEquivalent(offerUtil,
dataModel.getTakerFeeInBtc(),
tradeFeeInXmrWithFiat.set(OfferViewModelUtil.getTradeFeeWithFiatEquivalent(offerUtil,
dataModel.getTakerFee(),
xmrFormatter));
}
@ -689,7 +689,7 @@ class TakeOfferViewModel extends ActivatableWithDataModel<TakeOfferDataModel> im
public String getTradeFee() {
return OfferViewModelUtil.getTradeFeeWithFiatEquivalentAndPercentage(offerUtil,
dataModel.getTakerFeeInBtc(),
dataModel.getTakerFee(),
dataModel.getAmount().get(),
xmrFormatter,
HavenoUtils.getMinMakerFee());