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

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

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

@Data
@ApiModel(value = "会员卡充值请求对象")
public class MemberRechargeRequest {
	
	private Integer memberRechargeId;
	
	
	@NotEmpty(message = "会员卡号不可为空")
	@ApiModelProperty(name = "cardNum", value = "会员卡号", dataType = "String", example = "123546798", required = true)
	private String cardNum;
	
	@NotEmpty(message = "充值编号不可为空")
	@ApiModelProperty(name = "rechargeOrderNo", value = "充值编号", dataType = "String", example = "xxxxxxxxxx", required = true)
	private String rechargeOrderNo;
	
	@NotNull(message = "充值金额不可为空")
	@ApiModelProperty(name = "rechargeAmount", value = "充值金额", dataType = "BigDecimal", example = "123.21", required = true)
	@DecimalMax(value = "999999999.99", message = "充值金额不可大于999999999.99")
	private BigDecimal rechargeAmount;
	
	private BigDecimal giveAmount;
	
	@NotNull(message = "充值支付方式不可为空")
	@ApiModelProperty(name = "rechargeMode", value = "充值支付方式", dataType = "Integer", example = "2", required = true)
	private Integer rechargeMode;
	
	private String rechargeUser;
	
	@NotNull(message = "充值时间不可为空")
	@ApiModelProperty(name = "rechargeTime", value = "充值时间", dataType = "Date", example = "2018-04-16 15:20:32", required = true)
	private Date rechargeTime;
	
	
}