package org.yeshi.utils.entity.alipay; import java.math.BigDecimal; public class AlipayTransferInfo { public final static String TYPE_TRANSFER_ACCOUNT = "TRANS_ACCOUNT_NO_PWD";//单笔无密转账到支付宝账户 public final static String TYPE_REDPACKET = "STD_RED_PACKET";//现金红包 public final static String TYPE_REDPACKET_BANDCARD = "TRANS_BANKCARD_NO_PWD";//单笔无密转账到银行卡 public enum AlipayProductCodeEnum { STD_RED_PACKET("现金红包"), TRANS_ACCOUNT_NO_PWD("单笔无密转账到支付宝账户"), TRANS_BANKCARD_NO_PWD("单笔无密转账到银行卡"); private String name; private AlipayProductCodeEnum(String name) { this.name = name; } } public enum AlipayBizSceneEnum { PERSONAL_PAY("C2C现金红包-发红包"), PERSONAL_COLLECTION("C2C现金红包-领红包"), REFUND("C2C现金红包-红包退回"), DIRECT_TRANSFER("B2C现金红包、单笔无密转账"); private String name; private AlipayBizSceneEnum(String name) { this.name = name; } } private String outBizNo; private BigDecimal money;//转账限额0.1,红包限额0.01 private String orderTitle; private String mark; private AlipayTransferAccount account; private AlipayProductCodeEnum productCode; private AlipayBizSceneEnum bizScene; private String payerName; public String getOutBizNo() { return outBizNo; } public void setOutBizNo(String outBizNo) { this.outBizNo = outBizNo; } public BigDecimal getMoney() { return money; } public void setMoney(BigDecimal money) { this.money = money; } public String getOrderTitle() { return orderTitle; } public void setOrderTitle(String orderTitle) { this.orderTitle = orderTitle; } public String getMark() { return mark; } public void setMark(String mark) { this.mark = mark; } public AlipayTransferAccount getAccount() { return account; } public void setAccount(AlipayTransferAccount account) { this.account = account; } public AlipayProductCodeEnum getProductCode() { return productCode; } public void setProductCode(AlipayProductCodeEnum productCode) { this.productCode = productCode; } public AlipayBizSceneEnum getBizScene() { return bizScene; } public void setBizScene(AlipayBizSceneEnum bizScene) { this.bizScene = bizScene; } public String getPayerName() { return payerName; } public void setPayerName(String payerName) { this.payerName = payerName; } public static class AlipayTransferInfoFactory { public static AlipayTransferInfo createRedPack(String outBizNo, BigDecimal money, String orderTitle, String mark, AlipayTransferAccount account, String payerName) { AlipayTransferInfo info = new AlipayTransferInfo(); info.setBizScene(AlipayBizSceneEnum.DIRECT_TRANSFER); info.setProductCode(AlipayProductCodeEnum.STD_RED_PACKET); info.setOutBizNo(outBizNo); info.setPayerName(payerName); info.setOrderTitle(orderTitle); info.setMoney(money); info.setMark(mark); info.setAccount(account); return info; } public static AlipayTransferInfo createAccountTransfer(String outBizNo, BigDecimal money, String orderTitle, String mark, AlipayTransferAccount account, String payerName) { AlipayTransferInfo info = new AlipayTransferInfo(); info.setBizScene(AlipayBizSceneEnum.DIRECT_TRANSFER); info.setProductCode(AlipayProductCodeEnum.TRANS_ACCOUNT_NO_PWD); info.setOutBizNo(outBizNo); info.setPayerName(payerName); info.setOrderTitle(orderTitle); info.setMoney(money); info.setMark(mark); info.setAccount(account); return info; } } }