package domain

import (
	"topsdk/util"
)

type AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig struct {
	/*
	   优惠券最后能领取时间(超过这个时间，优惠券不能领取)     */
	ApplyEndTime *util.LocalTime `json:"apply_end_time,omitempty" `

	/*
	   优惠券每日限领数（-1表示不限制） defalutValue:-1    */
	CouponDailyLmt *int64 `json:"coupon_daily_lmt,omitempty" `

	/*
	   优惠券总数（-1表示不限制）     */
	CouponTotalLmt *int64 `json:"coupon_total_lmt,omitempty" `

	/*
	   每人每日限领（-1表示不限制）     */
	PersonalDailyLmt *int64 `json:"personal_daily_lmt,omitempty" `

	/*
	   个人总领取限制数量（-1表示不限制）     */
	PersonalLmt *int64 `json:"personal_lmt,omitempty" `

	/*
	   优惠券最早能领取时间(在这时间之前，优惠券不能领取)     */
	ApplyStartTime *util.LocalTime `json:"apply_start_time,omitempty" `
}

func (s *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig) SetApplyEndTime(v util.LocalTime) *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig {
	s.ApplyEndTime = &v
	return s
}
func (s *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig) SetCouponDailyLmt(v int64) *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig {
	s.CouponDailyLmt = &v
	return s
}
func (s *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig) SetCouponTotalLmt(v int64) *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig {
	s.CouponTotalLmt = &v
	return s
}
func (s *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig) SetPersonalDailyLmt(v int64) *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig {
	s.PersonalDailyLmt = &v
	return s
}
func (s *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig) SetPersonalLmt(v int64) *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig {
	s.PersonalLmt = &v
	return s
}
func (s *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig) SetApplyStartTime(v util.LocalTime) *AlibabaWdkCouponTemplateUpdateCouponTemplateApplyLimitConfig {
	s.ApplyStartTime = &v
	return s
}
