package org.springblade.yeePay.entity.saas.account;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springblade.yeePay.common.YeepayApiConstant;

import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;

@NoArgsConstructor
@AllArgsConstructor
@Data
@Builder
@ApiModel("充值-网银下单入参")
public class OnlineBankRechargeOrderDto {

	@NotBlank
	@ApiModelProperty(value = "充值商户编号,易宝支付分配的的商户唯一标识", required = true)
	private String merchantNo;

	@NotBlank
	@ApiModelProperty(value = "发起方商户编号（标准商户收付款方案中此参数与商编一致，平台商户收付款方案中此参数为平台商商户编号）", required = true)
	private String parentMerchantNo;

	@NotBlank
	@ApiModelProperty(value = "商户请求号", required = true)
	private String requestNo;

	@NotBlank
	@ApiModelProperty(value = "充值金额", required = true)
	private BigDecimal amount;

	/**
	 * 可选项如下:
	 * B2C:个人网银
	 * B2B:企业网银
	 */
	@NotBlank
	@ApiModelProperty(value = "充值支付方式", required = true)
	private YeepayApiConstant.payType payType;

	@NotBlank
	@ApiModelProperty(value = "银行编码", required = true)
	private String bankCode;

	@ApiModelProperty(value = "商户通知地址，不传则不通知回调内容请参看：充值结果通知")
	private String notifyUrl;

	@ApiModelProperty(value = "备注")
	private String remark;

	@ApiModelProperty(value = "支付成功跳转地址")
	private String returnUrl;


}
