package com.neusoft.smart.pos.dto.trade.request;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author zcf
 * @date 2018-02-23 10：43
 * @description 第三方支付单生成使用Request
 */
@Data
@ApiModel
public class PostPayOrderRequest {

	@NotNull(message = "POS机sn不能为空")
	@NotEmpty(message = "POS机sn不能为空")
	@ApiModelProperty(name = "serialNo", value = "POS机sn", dataType = "String",required=true ,example="NSPSA110GW174920065")
	private String serialNo;

	@NotNull(message = "订单编号不能为空")
	@NotEmpty(message = "订单编号不能为空")
	@ApiModelProperty(name = "orderNumber", value = "订单编号", dataType = "String" ,example="815339586216",required=true)
	private String orderNumber;

	@NotNull(message = "支付方式不能为空")
	@NotEmpty(message = "支付方式不能为空")
	@ApiModelProperty(name = "payType", value = "付款方式编号@1:微信支付@2:支付宝支付@3:银行卡支付@4:微信转账@:5支付宝转账@6:现金支付@7:会员卡支付@8:当面资金授权支付@9:银联二维码支付", dataType = "String" ,example="1",required=true)
	private String payType;

	@ApiModelProperty(name = "scanCode", value = "被扫支付码", dataType = "String" ,example="1")
	private String scanCode;

	@ApiModelProperty(name = "payAmount", value = "支付金额", dataType = "Double" ,example="1.00")
	private Double payAmount;

	@ApiModelProperty(name = "payInfoJsonString", value = "支付参数JSON字符串", dataType = "String" ,example="{payInfo:xxx}")
	private String payInfoJsonString;
}
