package domain

type AlibabaWdkCouponTemplateQueryCouponTemplate struct {
	/*
	   领取限制     */
	ApplyLimitConfig *AlibabaWdkCouponTemplateQueryCouponTemplateApplyLimitConfig `json:"apply_limit_config,omitempty" `

	/*
	   基础信息     */
	CommonConfig *AlibabaWdkCouponTemplateQueryCouponTemplateCommonConfig `json:"common_config,omitempty" `

	/*
	   生效条件     */
	ConditionConfig *AlibabaWdkCouponTemplateQueryCouponTemplateConditionConfig `json:"condition_config,omitempty" `

	/*
	   优惠效果     */
	DiscountConfig *AlibabaWdkCouponTemplateQueryCouponTemplateDiscountConfig `json:"discount_config,omitempty" `

	/*
	   模板表主键     */
	Id *int64 `json:"id,omitempty" `

	/*
	   出资人配置     */
	InvestmentConfig *AlibabaWdkCouponTemplateQueryCouponTemplateInvestmentConfig `json:"investment_config,omitempty" `

	/*
	   其他配置--拓展信息     */
	OptionConfig *AlibabaWdkCouponTemplateQueryCouponTemplateOptionConfig `json:"option_config,omitempty" `

	/*
	   参与者     */
	ParticipateConfig *AlibabaWdkCouponTemplateQueryCouponTemplateParticipateConfig `json:"participate_config,omitempty" `

	/*
	   ump模板ID     */
	SourceId *int64 `json:"source_id,omitempty" `

	/*
	   实例有效时间配置     */
	TimeLimitConfig *AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig `json:"time_limit_config,omitempty" `

	/*
	   优惠券模版uuid     */
	Uuid *string `json:"uuid,omitempty" `

	/*
	   兼容历史逻辑配置     */
	CompatibleConfig *AlibabaWdkCouponTemplateQueryCouponTemplateCompatibleConfig `json:"compatible_config,omitempty" `
}

func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetApplyLimitConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateApplyLimitConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.ApplyLimitConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetCommonConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateCommonConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.CommonConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetConditionConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateConditionConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.ConditionConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetDiscountConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateDiscountConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.DiscountConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetId(v int64) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.Id = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetInvestmentConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateInvestmentConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.InvestmentConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetOptionConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateOptionConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.OptionConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetParticipateConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateParticipateConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.ParticipateConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetSourceId(v int64) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.SourceId = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetTimeLimitConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateTimeLimitConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.TimeLimitConfig = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetUuid(v string) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.Uuid = &v
	return s
}
func (s *AlibabaWdkCouponTemplateQueryCouponTemplate) SetCompatibleConfig(v AlibabaWdkCouponTemplateQueryCouponTemplateCompatibleConfig) *AlibabaWdkCouponTemplateQueryCouponTemplate {
	s.CompatibleConfig = &v
	return s
}
