package request

import (
	"topsdk/ability571/domain"
	"topsdk/util"
)

type AlibabaWdkMarketingOpenDarunfaActivitySyncRequest struct {
	/*
	   大润发活动数据     */
	ActivityList *[]domain.AlibabaWdkMarketingOpenDarunfaActivitySyncDrfTxdActivityBo `json:"activity_list" required:"true" `
	/*
	   门店Id     */
	ShopId *string `json:"shop_id" required:"true" `
	/*
	   版本ID     */
	VersionId *int64 `json:"version_id" required:"true" `
}

func (s *AlibabaWdkMarketingOpenDarunfaActivitySyncRequest) SetActivityList(v []domain.AlibabaWdkMarketingOpenDarunfaActivitySyncDrfTxdActivityBo) *AlibabaWdkMarketingOpenDarunfaActivitySyncRequest {
	s.ActivityList = &v
	return s
}
func (s *AlibabaWdkMarketingOpenDarunfaActivitySyncRequest) SetShopId(v string) *AlibabaWdkMarketingOpenDarunfaActivitySyncRequest {
	s.ShopId = &v
	return s
}
func (s *AlibabaWdkMarketingOpenDarunfaActivitySyncRequest) SetVersionId(v int64) *AlibabaWdkMarketingOpenDarunfaActivitySyncRequest {
	s.VersionId = &v
	return s
}

func (req *AlibabaWdkMarketingOpenDarunfaActivitySyncRequest) ToMap() map[string]interface{} {
	paramMap := make(map[string]interface{})
	if req.ActivityList != nil {
		paramMap["activity_list"] = util.ConvertStructList(*req.ActivityList)
	}
	if req.ShopId != nil {
		paramMap["shop_id"] = *req.ShopId
	}
	if req.VersionId != nil {
		paramMap["version_id"] = *req.VersionId
	}
	return paramMap
}

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