/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.wechat.model.requestDto;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;

import org.hibernate.validator.constraints.NotBlank;


/**
 * 商品订单入参
 * 
 * @author jadyn.wu
 * @version 20190905
 */
public class GoodsOrdersReq {

	private String orderId; // 订单编号（采番规则：P/E/G+YYMMDD+13位的时间戳后8位+5位随机数）
	private String orderSource; // 订单来源[ 1-PC, 2-微信 ]
	private String type; // 0会员套餐订单 1个人服务,2企业服务,3商品购买，4积分兑换

	// 支付相关
	@NotBlank(message = "支付方式不能为空|payType can not be null")
	private String payType; // 支付方式[1-微信；2-支付宝；3-线下汇款]
	private String wxCode;// 微信支付时需要的参数

	// 发票信息
	@NotBlank(message = "开票类型区分不能为空|invType can not be null")
	private String invType; // 类型区分[0-不开票；1-普票；2-增值税发票]
	private String invTitle; // 发票抬头
	private String taxationNo; // 税号
	private String ltdAdd; // 公司地址
	private String ltdTel; // 公司电话
	private String openingBank; // 开户行
	private String accountNumber; // 开户账号
	private String invContent; // 开票内容
	private String invMoney; // 开票金额

	// 配送信息
	private Integer addId; // 地址id

	// 商品信息
	@NotNull(message = "商品ID不能为空|The goods id can not be null")
	private Integer goodsId; // 商品ID
	
	@NotNull(message = "商品数量不能为空|The goods numbers can not be null")
	@Min(value = 0,message = "商品数量不能为0|The goods numbers can not be zero")
	private Integer goodsNums; // 商品数量

	// 优惠券
	private String tcCode;// 券类别码
	private String tdCode;// 券详细码

	private String postscript; // 用户留言

	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public String getOrderSource() {
		return orderSource;
	}

	public void setOrderSource(String orderSource) {
		this.orderSource = orderSource;
	}

	public String getInvType() {
		return invType;
	}

	public void setInvType(String invType) {
		this.invType = invType;
	}

	public String getInvTitle() {
		return invTitle;
	}

	public void setInvTitle(String invTitle) {
		this.invTitle = invTitle;
	}

	public String getTaxationNo() {
		return taxationNo;
	}

	public void setTaxationNo(String taxationNo) {
		this.taxationNo = taxationNo;
	}

	public String getLtdAdd() {
		return ltdAdd;
	}

	public void setLtdAdd(String ltdAdd) {
		this.ltdAdd = ltdAdd;
	}

	public String getLtdTel() {
		return ltdTel;
	}

	public void setLtdTel(String ltdTel) {
		this.ltdTel = ltdTel;
	}

	public String getOpeningBank() {
		return openingBank;
	}

	public void setOpeningBank(String openingBank) {
		this.openingBank = openingBank;
	}

	public String getAccountNumber() {
		return accountNumber;
	}

	public void setAccountNumber(String accountNumber) {
		this.accountNumber = accountNumber;
	}

	public String getInvContent() {
		return invContent;
	}

	public void setInvContent(String invContent) {
		this.invContent = invContent;
	}

	public String getInvMoney() {
		return invMoney;
	}

	public void setInvMoney(String invMoney) {
		this.invMoney = invMoney;
	}

	public String getPayType() {
		return payType;
	}

	public void setPayType(String payType) {
		this.payType = payType;
	}

	public String getTcCode() {
		return tcCode;
	}

	public void setTcCode(String tcCode) {
		this.tcCode = tcCode;
	}

	public String getTdCode() {
		return tdCode;
	}

	public void setTdCode(String tdCode) {
		this.tdCode = tdCode;
	}

	public String getWxCode() {
		return wxCode;
	}

	public void setWxCode(String wxCode) {
		this.wxCode = wxCode;
	}

	public String getPostscript() {
		return postscript;
	}

	public void setPostscript(String postscript) {
		this.postscript = postscript;
	}

	public Integer getGoodsNums() {
		return goodsNums;
	}

	public void setGoodsNums(Integer goodsNums) {
		this.goodsNums = goodsNums;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public Integer getAddId() {
		return addId;
	}

	public void setAddId(Integer addId) {
		this.addId = addId;
	}
	
	public Integer getGoodsId() {
		return goodsId;
	}

	public void setGoodsId(Integer goodsId) {
		this.goodsId = goodsId;
	}


}