package request

import (
	"git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/util"
)

type AlibabaPricePromotionItemDeleteRequest struct {
	/*
	   toB渠道店OU     */
	OuCode *string `json:"ou_code" required:"true" `
	/*
	   外部档期编码     */
	OuterPromotionCode *string `json:"outer_promotion_code" required:"true" `
	/*
	   盒马唯一标识     */
	UniqueId *string `json:"unique_id,omitempty" required:"false" `
	/*
	   商品code     */
	SkuCodes *[]string `json:"sku_codes" required:"true" `
}

func (s *AlibabaPricePromotionItemDeleteRequest) SetOuCode(v string) *AlibabaPricePromotionItemDeleteRequest {
	s.OuCode = &v
	return s
}
func (s *AlibabaPricePromotionItemDeleteRequest) SetOuterPromotionCode(v string) *AlibabaPricePromotionItemDeleteRequest {
	s.OuterPromotionCode = &v
	return s
}
func (s *AlibabaPricePromotionItemDeleteRequest) SetUniqueId(v string) *AlibabaPricePromotionItemDeleteRequest {
	s.UniqueId = &v
	return s
}
func (s *AlibabaPricePromotionItemDeleteRequest) SetSkuCodes(v []string) *AlibabaPricePromotionItemDeleteRequest {
	s.SkuCodes = &v
	return s
}

func (req *AlibabaPricePromotionItemDeleteRequest) ToMap() map[string]interface{} {
	paramMap := make(map[string]interface{})
	if req.OuCode != nil {
		paramMap["ou_code"] = *req.OuCode
	}
	if req.OuterPromotionCode != nil {
		paramMap["outer_promotion_code"] = *req.OuterPromotionCode
	}
	if req.UniqueId != nil {
		paramMap["unique_id"] = *req.UniqueId
	}
	if req.SkuCodes != nil {
		paramMap["sku_codes"] = util.ConvertBasicList(*req.SkuCodes)
	}
	return paramMap
}

func (req *AlibabaPricePromotionItemDeleteRequest) ToFileMap() map[string]interface{} {
	fileMap := make(map[string]interface{})
	return fileMap
}
