package domain

import (
	"topsdk/util"
)

type AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig struct {
	/*
	   优惠券结束时间     */
	EndValidTime *util.LocalTime `json:"end_valid_time,omitempty" `

	/*
	   优惠券开始时间     */
	StartValidTime *util.LocalTime `json:"start_valid_time,omitempty" `

	/*
	   优惠券有效时间类型     */
	ValidTimeType *int64 `json:"valid_time_type,omitempty" `

	/*
	   优惠券有效时长     */
	ValidityPeriod *int64 `json:"validity_period,omitempty" `

	/*
	   优惠券有效开始时长，单位为秒（优惠券领取后X天开始有效）     */
	ValidityStartInterval *int64 `json:"validity_start_interval,omitempty" `

	/*
	   优惠券有效结束时长，单位为秒（优惠券领取后X-Y天有效的Y）     */
	ValidityEndInterval *int64 `json:"validity_end_interval,omitempty" `
}

func (s *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig) SetEndValidTime(v util.LocalTime) *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig {
	s.EndValidTime = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig) SetStartValidTime(v util.LocalTime) *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig {
	s.StartValidTime = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig) SetValidTimeType(v int64) *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig {
	s.ValidTimeType = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig) SetValidityPeriod(v int64) *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig {
	s.ValidityPeriod = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig) SetValidityStartInterval(v int64) *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig {
	s.ValidityStartInterval = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig) SetValidityEndInterval(v int64) *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig {
	s.ValidityEndInterval = &v
	return s
}
