mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-07-23 15:10:41 -04:00
Add an "extra_info" text area for CashApp
This commit is contained in:
parent
8bf8144709
commit
05b00727a5
9 changed files with 77 additions and 4 deletions
|
@ -412,6 +412,8 @@ public class Offer implements NetworkPayload, PersistablePayload {
|
|||
return getExtraDataMap().get(OfferPayload.AUSTRALIA_PAYID_EXTRA_INFO);
|
||||
else if (getExtraDataMap() != null && getExtraDataMap().containsKey(OfferPayload.PAYPAL_EXTRA_INFO))
|
||||
return getExtraDataMap().get(OfferPayload.PAYPAL_EXTRA_INFO);
|
||||
else if (getExtraDataMap() != null && getExtraDataMap().containsKey(OfferPayload.CASHAPP_EXTRA_INFO))
|
||||
return getExtraDataMap().get(OfferPayload.CASHAPP_EXTRA_INFO);
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
|
|
@ -94,6 +94,7 @@ public final class OfferPayload implements ProtectedStoragePayload, ExpirablePay
|
|||
// Keys for extra map
|
||||
// Only set for traditional offers
|
||||
public static final String ACCOUNT_AGE_WITNESS_HASH = "accountAgeWitnessHash";
|
||||
public static final String CASHAPP_EXTRA_INFO = "cashAppExtraInfo";
|
||||
public static final String REFERRAL_ID = "referralId";
|
||||
// Only used in payment method F2F
|
||||
public static final String F2F_CITY = "f2fCity";
|
||||
|
|
|
@ -37,6 +37,7 @@ import haveno.core.monetary.Volume;
|
|||
import static haveno.core.offer.OfferPayload.ACCOUNT_AGE_WITNESS_HASH;
|
||||
import static haveno.core.offer.OfferPayload.AUSTRALIA_PAYID_EXTRA_INFO;
|
||||
import static haveno.core.offer.OfferPayload.CAPABILITIES;
|
||||
import static haveno.core.offer.OfferPayload.CASHAPP_EXTRA_INFO;
|
||||
import static haveno.core.offer.OfferPayload.F2F_CITY;
|
||||
import static haveno.core.offer.OfferPayload.F2F_EXTRA_INFO;
|
||||
import static haveno.core.offer.OfferPayload.PAY_BY_MAIL_EXTRA_INFO;
|
||||
|
@ -46,6 +47,7 @@ import static haveno.core.offer.OfferPayload.XMR_AUTO_CONF;
|
|||
import static haveno.core.offer.OfferPayload.XMR_AUTO_CONF_ENABLED_VALUE;
|
||||
|
||||
import haveno.core.payment.AustraliaPayidAccount;
|
||||
import haveno.core.payment.CashAppAccount;
|
||||
import haveno.core.payment.F2FAccount;
|
||||
import haveno.core.payment.PayByMailAccount;
|
||||
import haveno.core.payment.PayPalAccount;
|
||||
|
@ -206,6 +208,10 @@ public class OfferUtil {
|
|||
extraDataMap.put(PAYPAL_EXTRA_INFO, ((PayPalAccount) paymentAccount).getExtraInfo());
|
||||
}
|
||||
|
||||
if (paymentAccount instanceof CashAppAccount) {
|
||||
extraDataMap.put(CASHAPP_EXTRA_INFO, ((CashAppAccount) paymentAccount).getExtraInfo());
|
||||
}
|
||||
|
||||
if (paymentAccount instanceof AustraliaPayidAccount) {
|
||||
extraDataMap.put(AUSTRALIA_PAYID_EXTRA_INFO, ((AustraliaPayidAccount) paymentAccount).getExtraInfo());
|
||||
}
|
||||
|
|
|
@ -39,6 +39,7 @@ public final class CashAppAccount extends PaymentAccount {
|
|||
PaymentAccountFormField.FieldId.EMAIL_OR_MOBILE_NR_OR_CASHTAG,
|
||||
PaymentAccountFormField.FieldId.TRADE_CURRENCIES,
|
||||
PaymentAccountFormField.FieldId.ACCOUNT_NAME,
|
||||
PaymentAccountFormField.FieldId.EXTRA_INFO,
|
||||
PaymentAccountFormField.FieldId.SALT);
|
||||
|
||||
public CashAppAccount() {
|
||||
|
@ -67,4 +68,12 @@ public final class CashAppAccount extends PaymentAccount {
|
|||
public String getEmailOrMobileNrOrCashtag() {
|
||||
return ((CashAppAccountPayload) paymentAccountPayload).getEmailOrMobileNrOrCashtag();
|
||||
}
|
||||
|
||||
public void setExtraInfo(String extraInfo) {
|
||||
((CashAppAccountPayload) paymentAccountPayload).setExtraInfo(extraInfo);
|
||||
}
|
||||
|
||||
public String getExtraInfo() {
|
||||
return ((CashAppAccountPayload) paymentAccountPayload).getExtraInfo();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,6 +36,7 @@ import java.util.Map;
|
|||
@Slf4j
|
||||
public final class CashAppAccountPayload extends PaymentAccountPayload {
|
||||
private String emailOrMobileNrOrCashtag = "";
|
||||
private String extraInfo = "";
|
||||
|
||||
public CashAppAccountPayload(String paymentMethod, String id) {
|
||||
super(paymentMethod, id);
|
||||
|
@ -48,6 +49,7 @@ public final class CashAppAccountPayload extends PaymentAccountPayload {
|
|||
private CashAppAccountPayload(String paymentMethod,
|
||||
String id,
|
||||
String emailOrMobileNrOrCashtag,
|
||||
String extraInfo,
|
||||
long maxTradePeriod,
|
||||
Map<String, String> excludeFromJsonDataMap) {
|
||||
super(paymentMethod,
|
||||
|
@ -56,13 +58,15 @@ public final class CashAppAccountPayload extends PaymentAccountPayload {
|
|||
excludeFromJsonDataMap);
|
||||
|
||||
this.emailOrMobileNrOrCashtag = emailOrMobileNrOrCashtag;
|
||||
this.extraInfo = extraInfo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Message toProtoMessage() {
|
||||
return getPaymentAccountPayloadBuilder()
|
||||
.setCashAppAccountPayload(protobuf.CashAppAccountPayload.newBuilder()
|
||||
.setEmailOrMobileNrOrCashtag(emailOrMobileNrOrCashtag))
|
||||
.setExtraInfo(extraInfo)
|
||||
.setEmailOrMobileNrOrCashtag(emailOrMobileNrOrCashtag))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -70,6 +74,7 @@ public final class CashAppAccountPayload extends PaymentAccountPayload {
|
|||
return new CashAppAccountPayload(proto.getPaymentMethodId(),
|
||||
proto.getId(),
|
||||
proto.getCashAppAccountPayload().getEmailOrMobileNrOrCashtag(),
|
||||
proto.getCashAppAccountPayload().getExtraInfo(),
|
||||
proto.getMaxTradePeriod(),
|
||||
new HashMap<>(proto.getExcludeFromJsonDataMap()));
|
||||
}
|
||||
|
@ -81,7 +86,10 @@ public final class CashAppAccountPayload extends PaymentAccountPayload {
|
|||
|
||||
@Override
|
||||
public String getPaymentDetails() {
|
||||
return Res.get(paymentMethodId) + " - " + Res.getWithCol("payment.email.mobile.cashtag") + " " + emailOrMobileNrOrCashtag;
|
||||
return Res.get(paymentMethodId) + " - " +
|
||||
Res.getWithCol("payment.email.mobile.cashtag") +
|
||||
" " + emailOrMobileNrOrCashtag + "\n" +
|
||||
Res.getWithCol("payment.shared.extraInfo") + " " + extraInfo+ "\n";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue