btcpayserver/BTCPayServer/Models/CustodianAccountViewModels/WithdrawalPrepareViewModel.cs
Wouter Samaey 6f2b673021
Custodian withdrawal support + Some refactoring and cleanup (#4085)
* Renamed "WithdrawAsync" to "WithdrawToStoreWalletAsync"

* WIP

* WIP withdrawal + Refactored Form saving to JObject

* WIP

* Form to fix bad values during withdrawing appears correctly

* WIP

* Lots of cleanup and refactoring + Password field and toggle password view

* Cleanup + Finishing touches on withdrawals

* Added "Destination" dummy text as this is always the destination.

* Fixed broken test

* Added support for withdrawing using qty as a percentage if it ends with "%". Needs more testing.

* Fixed broken build

* Fixed broken build (2)

* Update BTCPayServer/wwwroot/swagger/v1/swagger.template.custodians.json

Co-authored-by: d11n <mail@dennisreimann.de>

* Update BTCPayServer/wwwroot/swagger/v1/swagger.template.custodians.json

Co-authored-by: d11n <mail@dennisreimann.de>

* Improved unit tests

* Fixed swagger bug

* Test improvements

Make string conversion of quantity explicitely.

* Fix build warnings

* Swagger: Add missing operationId

* Made change Dennis requested

* Removed unused file

* Removed incorrect comment

* Extra contructor

* Renamed client methods

* Cleanup config before saving

* Fixed broken controller

* Refactor custodian

* Fix build

* Make decimal fields strings to match the rest of Greenfield

* Improve parsing of % quantities

---------

Co-authored-by: d11n <mail@dennisreimann.de>
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2023-03-20 10:45:32 +09:00

28 lines
1.1 KiB
C#

using System.Collections.Generic;
using BTCPayServer.Abstractions.Form;
using BTCPayServer.Client.Models;
namespace BTCPayServer.Models.CustodianAccountViewModels;
public class WithdrawalPrepareViewModel : WithdrawalSimulationResponseData
{
public string ErrorMessage { get; set; }
public string[] BadConfigFields { get; set; }
public WithdrawalPrepareViewModel(string paymentMethod, string asset, string accountId, string custodianCode,
List<LedgerEntryData> ledgerEntries, decimal minQty, decimal maxQty) : base(paymentMethod, asset, accountId,
custodianCode, ledgerEntries, minQty, maxQty)
{
}
public WithdrawalPrepareViewModel(WithdrawalSimulationResponseData simulateWithdrawal) : base(
simulateWithdrawal.PaymentMethod, simulateWithdrawal.Asset, simulateWithdrawal.AccountId,
simulateWithdrawal.CustodianCode, simulateWithdrawal.LedgerEntries, simulateWithdrawal.MinQty,
simulateWithdrawal.MaxQty)
{
}
public WithdrawalPrepareViewModel() : base(null, null, null, null, null, null, null)
{
}
}