mirror of
https://github.com/bisq-network/bisq.git
synced 2025-02-22 14:42:37 +01:00
Include owner name for Monese & Satispay accounts
This commit is contained in:
parent
6f41558ae0
commit
f5c653b92a
6 changed files with 68 additions and 20 deletions
|
@ -34,6 +34,14 @@ public final class MoneseAccount extends PaymentAccount {
|
|||
return new MoneseAccountPayload(paymentMethod.getId(), id);
|
||||
}
|
||||
|
||||
public void setHolderName(String accountId) {
|
||||
((MoneseAccountPayload) paymentAccountPayload).setHolderName(accountId);
|
||||
}
|
||||
|
||||
public String getHolderName() {
|
||||
return ((MoneseAccountPayload) paymentAccountPayload).getHolderName();
|
||||
}
|
||||
|
||||
public void setMobileNr(String accountId) {
|
||||
((MoneseAccountPayload) paymentAccountPayload).setMobileNr(accountId);
|
||||
}
|
||||
|
|
|
@ -34,6 +34,14 @@ public final class SatispayAccount extends CountryBasedPaymentAccount {
|
|||
return new SatispayAccountPayload(paymentMethod.getId(), id);
|
||||
}
|
||||
|
||||
public void setHolderName(String accountId) {
|
||||
((SatispayAccountPayload) paymentAccountPayload).setHolderName(accountId);
|
||||
}
|
||||
|
||||
public String getHolderName() {
|
||||
return ((SatispayAccountPayload) paymentAccountPayload).getHolderName();
|
||||
}
|
||||
|
||||
public void setMobileNr(String accountId) {
|
||||
((SatispayAccountPayload) paymentAccountPayload).setMobileNr(accountId);
|
||||
}
|
||||
|
|
|
@ -38,6 +38,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||
@Getter
|
||||
@Slf4j
|
||||
public final class MoneseAccountPayload extends PaymentAccountPayload {
|
||||
private String holderName = "";
|
||||
private String mobileNr = "";
|
||||
|
||||
public MoneseAccountPayload(String paymentMethod, String id) {
|
||||
|
@ -46,6 +47,7 @@ public final class MoneseAccountPayload extends PaymentAccountPayload {
|
|||
|
||||
private MoneseAccountPayload(String paymentMethod,
|
||||
String id,
|
||||
String holderName,
|
||||
String mobileNr,
|
||||
long maxTradePeriod,
|
||||
Map<String, String> excludeFromJsonDataMap) {
|
||||
|
@ -54,19 +56,23 @@ public final class MoneseAccountPayload extends PaymentAccountPayload {
|
|||
maxTradePeriod,
|
||||
excludeFromJsonDataMap);
|
||||
|
||||
this.holderName = holderName;
|
||||
this.mobileNr = mobileNr;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Message toProtoMessage() {
|
||||
return getPaymentAccountPayloadBuilder()
|
||||
.setMoneseAccountPayload(protobuf.MoneseAccountPayload.newBuilder().setMobileNr(mobileNr))
|
||||
.setMoneseAccountPayload(protobuf.MoneseAccountPayload.newBuilder()
|
||||
.setHolderName(holderName)
|
||||
.setMobileNr(mobileNr))
|
||||
.build();
|
||||
}
|
||||
|
||||
public static MoneseAccountPayload fromProto(protobuf.PaymentAccountPayload proto) {
|
||||
return new MoneseAccountPayload(proto.getPaymentMethodId(),
|
||||
proto.getId(),
|
||||
proto.getMoneseAccountPayload().getHolderName(),
|
||||
proto.getMoneseAccountPayload().getMobileNr(),
|
||||
proto.getMaxTradePeriod(),
|
||||
new HashMap<>(proto.getExcludeFromJsonDataMap()));
|
||||
|
@ -74,7 +80,7 @@ public final class MoneseAccountPayload extends PaymentAccountPayload {
|
|||
|
||||
@Override
|
||||
public String getPaymentDetails() {
|
||||
return Res.get(paymentMethodId) + " - " + Res.getWithCol("payment.mobile") + " " + mobileNr;
|
||||
return Res.get(paymentMethodId) + " - " + Res.getWithCol("payment.account.userName") + " " + holderName;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -84,6 +90,6 @@ public final class MoneseAccountPayload extends PaymentAccountPayload {
|
|||
|
||||
@Override
|
||||
public byte[] getAgeWitnessInputData() {
|
||||
return super.getAgeWitnessInputData(mobileNr.getBytes(StandardCharsets.UTF_8));
|
||||
return super.getAgeWitnessInputData(holderName.getBytes(StandardCharsets.UTF_8));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -38,6 +38,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||
@Getter
|
||||
@Slf4j
|
||||
public final class SatispayAccountPayload extends CountryBasedPaymentAccountPayload {
|
||||
private String holderName = "";
|
||||
private String mobileNr = "";
|
||||
|
||||
public SatispayAccountPayload(String paymentMethod, String id) {
|
||||
|
@ -47,6 +48,7 @@ public final class SatispayAccountPayload extends CountryBasedPaymentAccountPayl
|
|||
private SatispayAccountPayload(String paymentMethod,
|
||||
String id,
|
||||
String countryCode,
|
||||
String holderName,
|
||||
String mobileNr,
|
||||
long maxTradePeriod,
|
||||
Map<String, String> excludeFromJsonDataMap) {
|
||||
|
@ -56,12 +58,14 @@ public final class SatispayAccountPayload extends CountryBasedPaymentAccountPayl
|
|||
maxTradePeriod,
|
||||
excludeFromJsonDataMap);
|
||||
|
||||
this.holderName = holderName;
|
||||
this.mobileNr = mobileNr;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Message toProtoMessage() {
|
||||
protobuf.SatispayAccountPayload.Builder builder = protobuf.SatispayAccountPayload.newBuilder()
|
||||
.setHolderName(holderName)
|
||||
.setMobileNr(mobileNr);
|
||||
final protobuf.CountryBasedPaymentAccountPayload.Builder countryBasedPaymentAccountPayload = getPaymentAccountPayloadBuilder()
|
||||
.getCountryBasedPaymentAccountPayloadBuilder()
|
||||
|
@ -73,18 +77,19 @@ public final class SatispayAccountPayload extends CountryBasedPaymentAccountPayl
|
|||
|
||||
public static SatispayAccountPayload fromProto(protobuf.PaymentAccountPayload proto) {
|
||||
protobuf.CountryBasedPaymentAccountPayload countryBasedPaymentAccountPayload = proto.getCountryBasedPaymentAccountPayload();
|
||||
protobuf.SatispayAccountPayload paytmAccountPayloadPB = countryBasedPaymentAccountPayload.getSatispayAccountPayload();
|
||||
protobuf.SatispayAccountPayload accountPayloadPB = countryBasedPaymentAccountPayload.getSatispayAccountPayload();
|
||||
return new SatispayAccountPayload(proto.getPaymentMethodId(),
|
||||
proto.getId(),
|
||||
countryBasedPaymentAccountPayload.getCountryCode(),
|
||||
paytmAccountPayloadPB.getMobileNr(),
|
||||
accountPayloadPB.getHolderName(),
|
||||
accountPayloadPB.getMobileNr(),
|
||||
proto.getMaxTradePeriod(),
|
||||
new HashMap<>(proto.getExcludeFromJsonDataMap()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPaymentDetails() {
|
||||
return Res.get(paymentMethodId) + " - " + Res.getWithCol("payment.mobile") + " " + mobileNr;
|
||||
return Res.get(paymentMethodId) + " - " + Res.getWithCol("payment.account.userName") + " " + holderName;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -94,6 +99,6 @@ public final class SatispayAccountPayload extends CountryBasedPaymentAccountPayl
|
|||
|
||||
@Override
|
||||
public byte[] getAgeWitnessInputData() {
|
||||
return super.getAgeWitnessInputData(mobileNr.getBytes(StandardCharsets.UTF_8));
|
||||
return super.getAgeWitnessInputData(holderName.getBytes(StandardCharsets.UTF_8));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,7 +31,6 @@ import bisq.core.payment.payload.MoneseAccountPayload;
|
|||
import bisq.core.util.coin.CoinFormatter;
|
||||
import bisq.core.util.validation.InputValidator;
|
||||
|
||||
import javafx.scene.control.TextField;
|
||||
import javafx.scene.layout.FlowPane;
|
||||
import javafx.scene.layout.GridPane;
|
||||
|
||||
|
@ -41,11 +40,14 @@ import static bisq.desktop.util.FormBuilder.addTopLabelTextField;
|
|||
|
||||
public class MoneseForm extends PaymentMethodForm {
|
||||
private final MoneseAccount account;
|
||||
private InputTextField holderNameInputTextField;
|
||||
private InputTextField mobileNrInputTextField;
|
||||
|
||||
public static int addFormForBuyer(GridPane gridPane, int gridRow,
|
||||
PaymentAccountPayload paymentAccountPayload) {
|
||||
addCompactTopLabelTextFieldWithCopyIcon(gridPane, ++gridRow, Res.get("payment.mobile"),
|
||||
addCompactTopLabelTextFieldWithCopyIcon(gridPane, ++gridRow, 0, Res.get("payment.account.owner"),
|
||||
((MoneseAccountPayload) paymentAccountPayload).getHolderName());
|
||||
addCompactTopLabelTextFieldWithCopyIcon(gridPane, gridRow, 1, Res.get("payment.mobile"),
|
||||
((MoneseAccountPayload) paymentAccountPayload).getMobileNr());
|
||||
return gridRow;
|
||||
}
|
||||
|
@ -61,6 +63,13 @@ public class MoneseForm extends PaymentMethodForm {
|
|||
public void addFormForAddAccount() {
|
||||
gridRowFrom = gridRow + 1;
|
||||
|
||||
holderNameInputTextField = FormBuilder.addInputTextField(gridPane, ++gridRow, Res.get("payment.account.owner"));
|
||||
holderNameInputTextField.setValidator(inputValidator);
|
||||
holderNameInputTextField.textProperty().addListener((ov, oldValue, newValue) -> {
|
||||
account.setHolderName(newValue.trim());
|
||||
updateFromInputs();
|
||||
});
|
||||
|
||||
mobileNrInputTextField = FormBuilder.addInputTextField(gridPane, ++gridRow, Res.get("payment.mobile"));
|
||||
mobileNrInputTextField.setValidator(inputValidator);
|
||||
mobileNrInputTextField.textProperty().addListener((ov, oldValue, newValue) -> {
|
||||
|
@ -99,9 +108,10 @@ public class MoneseForm extends PaymentMethodForm {
|
|||
account.getAccountName(), Layout.FIRST_ROW_AND_GROUP_DISTANCE);
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("shared.paymentMethod"),
|
||||
Res.get(account.getPaymentMethod().getId()));
|
||||
TextField field = addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("payment.mobile"),
|
||||
account.getMobileNr()).second;
|
||||
field.setMouseTransparent(false);
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("payment.account.owner"), account.getHolderName())
|
||||
.second.setMouseTransparent(false);
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("payment.mobile"), account.getMobileNr())
|
||||
.second.setMouseTransparent(false);
|
||||
addLimitations(true);
|
||||
addCurrenciesGrid(false);
|
||||
}
|
||||
|
@ -109,7 +119,7 @@ public class MoneseForm extends PaymentMethodForm {
|
|||
@Override
|
||||
public void updateAllInputsValid() {
|
||||
allInputsValid.set(isAccountNameValid()
|
||||
&& account.getMobileNr() != null
|
||||
&& inputValidator.validate(account.getHolderName()).isValid
|
||||
&& inputValidator.validate(account.getMobileNr()).isValid
|
||||
&& account.getTradeCurrencies().size() > 0);
|
||||
}
|
||||
|
|
|
@ -32,21 +32,23 @@ import bisq.core.payment.payload.SatispayAccountPayload;
|
|||
import bisq.core.util.coin.CoinFormatter;
|
||||
import bisq.core.util.validation.InputValidator;
|
||||
|
||||
import javafx.scene.control.TextField;
|
||||
import javafx.scene.layout.GridPane;
|
||||
|
||||
import static bisq.desktop.util.FormBuilder.addCompactTopLabelTextField;
|
||||
import static bisq.desktop.util.FormBuilder.addCompactTopLabelTextFieldWithCopyIcon;
|
||||
import static bisq.desktop.util.FormBuilder.addTopLabelTextField;
|
||||
import static bisq.desktop.util.FormBuilder.addTopLabelTextFieldWithCopyIcon;
|
||||
|
||||
public class SatispayForm extends PaymentMethodForm {
|
||||
private final SatispayAccount account;
|
||||
private InputTextField holderNameField;
|
||||
private InputTextField mobileNrInputTextField;
|
||||
|
||||
public static int addFormForBuyer(GridPane gridPane, int gridRow,
|
||||
PaymentAccountPayload paymentAccountPayload) {
|
||||
addTopLabelTextFieldWithCopyIcon(gridPane, gridRow, 1, Res.get("payment.mobile"),
|
||||
((SatispayAccountPayload) paymentAccountPayload).getMobileNr(), Layout.COMPACT_FIRST_ROW_AND_GROUP_DISTANCE);
|
||||
addCompactTopLabelTextFieldWithCopyIcon(gridPane, ++gridRow, 0, Res.get("payment.account.owner"),
|
||||
((SatispayAccountPayload) paymentAccountPayload).getHolderName());
|
||||
addCompactTopLabelTextFieldWithCopyIcon(gridPane, gridRow, 1, Res.get("payment.mobile"),
|
||||
((SatispayAccountPayload) paymentAccountPayload).getMobileNr());
|
||||
return gridRow;
|
||||
}
|
||||
|
||||
|
@ -65,6 +67,13 @@ public class SatispayForm extends PaymentMethodForm {
|
|||
|
||||
gridRowFrom = gridRow + 1;
|
||||
|
||||
holderNameField = FormBuilder.addInputTextField(gridPane, ++gridRow, Res.get("payment.account.owner"));
|
||||
holderNameField.setValidator(inputValidator);
|
||||
holderNameField.textProperty().addListener((ov, oldValue, newValue) -> {
|
||||
account.setHolderName(newValue.trim());
|
||||
updateFromInputs();
|
||||
});
|
||||
|
||||
mobileNrInputTextField = FormBuilder.addInputTextField(gridPane, ++gridRow, Res.get("payment.mobile"));
|
||||
mobileNrInputTextField.setValidator(inputValidator);
|
||||
mobileNrInputTextField.textProperty().addListener((ov, oldValue, newValue) -> {
|
||||
|
@ -90,9 +99,10 @@ public class SatispayForm extends PaymentMethodForm {
|
|||
account.getAccountName(), Layout.FIRST_ROW_AND_GROUP_DISTANCE);
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("shared.paymentMethod"),
|
||||
Res.get(account.getPaymentMethod().getId()));
|
||||
TextField field = addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("payment.mobile"),
|
||||
account.getMobileNr()).second;
|
||||
field.setMouseTransparent(false);
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("payment.account.owner"), account.getHolderName())
|
||||
.second.setMouseTransparent(false);
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("payment.mobile"), account.getMobileNr())
|
||||
.second.setMouseTransparent(false);
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("shared.currency"), account.getSingleTradeCurrency().getNameAndCode());
|
||||
addCompactTopLabelTextField(gridPane, ++gridRow, Res.get("shared.country"), account.getCountry().name);
|
||||
addLimitations(true);
|
||||
|
@ -101,6 +111,7 @@ public class SatispayForm extends PaymentMethodForm {
|
|||
@Override
|
||||
public void updateAllInputsValid() {
|
||||
allInputsValid.set(isAccountNameValid()
|
||||
&& inputValidator.validate(account.getHolderName()).isValid
|
||||
&& inputValidator.validate(account.getMobileNr()).isValid);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue