package domain


type AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto struct {
    /*
        商品编码，与商品条码必选其一，或者同时传入以商品条码为准     */
    SkuCode  *string `json:"sku_code,omitempty" `

    /*
        限购配置信息     */
    Limit  *AlibabaRetailMarketingBuygiftActivitySkuAddLimitDto `json:"limit,omitempty" `

    /*
        赠品编码，不填默认赠品为商品本身，赠品条码，不填默认赠品为商品本身，若主品传入的是编码，则赠品需传入编码或者不传     */
    GiftSkuCode  *string `json:"gift_sku_code,omitempty" `

    /*
        买N赠M的M参数，赠多少件赠品（目前仅支持买N赠1，giftNum默认为1） defalutValue:1    */
    GiftNum  *int64 `json:"gift_num,omitempty" `

    /*
        买N赠M的N参数，买多少件可赠     */
    BuyNum  *int64 `json:"buy_num,omitempty" `

    /*
        商品条码，与商品编码必选其一，或者同时传入以商品条码为准     */
    Barcode  *string `json:"barcode,omitempty" `

    /*
        赠品条码，不填默认赠品为商品本身，若主品传入的是条码，则赠品需传入条码或者不传     */
    GiftBarcode  *string `json:"gift_barcode,omitempty" `

    /*
        商品渠道配置信息     */
    SkuChannelConfigs  *[]AlibabaRetailMarketingBuygiftActivitySkuAddSkuChannelConfigDTO `json:"sku_channel_configs,omitempty" `

}

func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetSkuCode(v string) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.SkuCode = &v
    return s
}
func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetLimit(v AlibabaRetailMarketingBuygiftActivitySkuAddLimitDto) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.Limit = &v
    return s
}
func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetGiftSkuCode(v string) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.GiftSkuCode = &v
    return s
}
func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetGiftNum(v int64) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.GiftNum = &v
    return s
}
func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetBuyNum(v int64) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.BuyNum = &v
    return s
}
func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetBarcode(v string) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.Barcode = &v
    return s
}
func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetGiftBarcode(v string) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.GiftBarcode = &v
    return s
}
func (s *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto) SetSkuChannelConfigs(v []AlibabaRetailMarketingBuygiftActivitySkuAddSkuChannelConfigDTO) *AlibabaRetailMarketingBuygiftActivitySkuAddSkuActivityElementDto {
    s.SkuChannelConfigs = &v
    return s
}
