package com.alipay.api.domain;

import com.alipay.api.AlipayObject;
import com.alipay.api.internal.mapping.ApiField;

/**
 * 创建现金活动
 *
 * @author auto create
 * @since 1.0, 2017-02-23 23:08:11
 */
public class AlipayMarketingCampaignCashCreateModel extends AlipayObject {

	private static final long serialVersionUID = 5583666267572377758L;

	/**
	 * 红包名称,商户在查询列表、详情看到的名字,同时也会显示在商户付款页面。
	 */
	@ApiField("coupon_name")
	private String couponName;

	/**
	 * 活动结束时间,必须大于活动开始时间, 基本格式:yyyy-MM-dd HH:mm:ss,活动有效时间最长为6个月，过期后需要创建新的活动。
	 */
	@ApiField("end_time")
	private String endTime;

	/**
	 * 商户打款后的跳转链接，从支付宝收银台打款成功后的跳转链接。不填时，打款后停留在支付宝支付成功页。商户实际跳转会自动添加crowdNo作为跳转参数。示例: http://www.koubei.com?crowdNo=XXX
	 */
	@ApiField("merchant_link")
	private String merchantLink;

	/**
	 * 活动文案,用户在账单、红包中看到的账单描述、红包描述
	 */
	@ApiField("prize_msg")
	private String prizeMsg;

	/**
	 * 现金红包的发放形式, fixed为固定金额,random为随机金额。选择随机金额时，单个红包的金额在平均金额的0.5~1.5倍之间浮动。
	 */
	@ApiField("prize_type")
	private String prizeType;

	/**
	 * 用户在当前活动参与次数、频率限制。支持日(D)、周(W)、月(M)、终身(L)维度的限制。其中日(D)、周(W)、月(M)最多只能选择一个,终身(L)为必填项。多个配置之间使用"|"进行分隔。终身(L)次数限制最大为100，日(D)、周(W)、月(M)频率设置必须小于等于终身(L)的次数。整个字段不填时默认值为:L1。允许多次领取时，活动触发接口需要传入out_biz_no来配合。
	 */
	@ApiField("send_freqency")
	private String sendFreqency;

	/**
	 * 活动开始时间,必须大于活动创建的时间. 
(1) 填固定时间:2016-08-10 22:28:30, 基本格式:yyyy-MM-dd HH:mm:ss
(2) 填字符串NowTime
	 */
	@ApiField("start_time")
	private String startTime;

	/**
	 * 活动发放的现金总金额,最小金额1.00元,最大金额10000000.00元。每个红包的最大金额不允许超过200元,最小金额不得低于0.20元。 实际的金额限制可能会根据业务进行动态调整。
	 */
	@ApiField("total_money")
	private String totalMoney;

	/**
	 * 红包发放个数，不同的发奖类型含义不同：
(1) 固定金额：活动总共发放的现金红包个数,最小1个,最大10000000个。 实际的个数限制可能会根据业务进行动态调整。
(2) 随机金额：用于计算每个随机红包的平均值，但最终发放个数不一定是total_num，可能大于也可能小于。
	 */
	@ApiField("total_num")
	private String totalNum;

	public String getCouponName() {
		return this.couponName;
	}
	public void setCouponName(String couponName) {
		this.couponName = couponName;
	}

	public String getEndTime() {
		return this.endTime;
	}
	public void setEndTime(String endTime) {
		this.endTime = endTime;
	}

	public String getMerchantLink() {
		return this.merchantLink;
	}
	public void setMerchantLink(String merchantLink) {
		this.merchantLink = merchantLink;
	}

	public String getPrizeMsg() {
		return this.prizeMsg;
	}
	public void setPrizeMsg(String prizeMsg) {
		this.prizeMsg = prizeMsg;
	}

	public String getPrizeType() {
		return this.prizeType;
	}
	public void setPrizeType(String prizeType) {
		this.prizeType = prizeType;
	}

	public String getSendFreqency() {
		return this.sendFreqency;
	}
	public void setSendFreqency(String sendFreqency) {
		this.sendFreqency = sendFreqency;
	}

	public String getStartTime() {
		return this.startTime;
	}
	public void setStartTime(String startTime) {
		this.startTime = startTime;
	}

	public String getTotalMoney() {
		return this.totalMoney;
	}
	public void setTotalMoney(String totalMoney) {
		this.totalMoney = totalMoney;
	}

	public String getTotalNum() {
		return this.totalNum;
	}
	public void setTotalNum(String totalNum) {
		this.totalNum = totalNum;
	}

}
