diff --git a/defaultability/Defaultability.go b/defaultability/Defaultability.go index 76a69cb..8561618 100644 --- a/defaultability/Defaultability.go +++ b/defaultability/Defaultability.go @@ -133,3 +133,20 @@ func (ability *Defaultability) TaobaoUnideskRtaToolsMonitorurlGet(req *request.T err = util.HandleJsonResponse(jsonStr, &respStruct) return &respStruct, err } + +/* +UD工具-广告主查询接口 +*/ +func (ability *Defaultability) TaobaoUnideskRtaUserAdvertiserGet(req *request.TaobaoUnideskRtaUserAdvertiserGetRequest) (*response.TaobaoUnideskRtaUserAdvertiserGetResponse, error) { + if ability.Client == nil { + return nil, errors.New("Defaultability topClient is nil") + } + var jsonStr, err = ability.Client.Execute("taobao.unidesk.rta.user.advertiser.get", req.ToMap(), req.ToFileMap()) + var respStruct = response.TaobaoUnideskRtaUserAdvertiserGetResponse{} + if err != nil { + log.Println("taobaoUnideskRtaUserAdvertiserGet error", err) + return &respStruct, err + } + err = util.HandleJsonResponse(jsonStr, &respStruct) + return &respStruct, err +} diff --git a/defaultability/request/TaobaoUnideskRtaUserAdvertiserGetRequest.go b/defaultability/request/TaobaoUnideskRtaUserAdvertiserGetRequest.go new file mode 100644 index 0000000..fa0166f --- /dev/null +++ b/defaultability/request/TaobaoUnideskRtaUserAdvertiserGetRequest.go @@ -0,0 +1,62 @@ +package request + +type TaobaoUnideskRtaUserAdvertiserGetRequest struct { + AdvertiserTopQueryDTO *AdvertiserTopQueryDTO `json:"advertiser_top_query_dto" required:"true" ` +} + +type AdvertiserTopQueryDTO struct { + /* + 广告主ids */ + Ids *[]int64 `json:"ids,omitempty" required:"false" ` + /* + 第几页 */ + PageNo *int64 `json:"page_no,omitempty" required:"false" ` + /* + 每页多少条 */ + PageSize *int64 `json:"page_size,omitempty" required:"false" ` + /* + 活跃账户周期 1:1日内活跃 3: 3日内活跃 7:7日内活跃 15:15日内活跃 -1: 不限活跃度 */ + ActivePeriod *int64 `json:"active_period,omitempty" required:"false" ` +} + +func (s *TaobaoUnideskRtaUserAdvertiserGetRequest) setIds(v []int64) *TaobaoUnideskRtaUserAdvertiserGetRequest { + s.AdvertiserTopQueryDTO.Ids = &v + return s +} + +func (s *TaobaoUnideskRtaUserAdvertiserGetRequest) SetPageNo(v int64) *TaobaoUnideskRtaUserAdvertiserGetRequest { + s.AdvertiserTopQueryDTO.PageNo = &v + return s +} + +func (s *TaobaoUnideskRtaUserAdvertiserGetRequest) SetPageSize(v int64) *TaobaoUnideskRtaUserAdvertiserGetRequest { + s.AdvertiserTopQueryDTO.PageSize = &v + return s +} + +func (s *TaobaoUnideskRtaUserAdvertiserGetRequest) SetActivePeriod(v int64) *TaobaoUnideskRtaUserAdvertiserGetRequest { + s.AdvertiserTopQueryDTO.ActivePeriod = &v + return s +} + +func (req *TaobaoUnideskRtaUserAdvertiserGetRequest) ToMap() map[string]interface{} { + paramMap := make(map[string]interface{}) + if req.AdvertiserTopQueryDTO.Ids != nil { + paramMap["ids"] = *req.AdvertiserTopQueryDTO.Ids + } + if req.AdvertiserTopQueryDTO.ActivePeriod != nil { + paramMap["active_period"] = *req.AdvertiserTopQueryDTO.ActivePeriod + } + if req.AdvertiserTopQueryDTO.PageNo != nil { + paramMap["page_no"] = *req.AdvertiserTopQueryDTO.PageNo + } + if req.AdvertiserTopQueryDTO.PageSize != nil { + paramMap["page_size"] = *req.AdvertiserTopQueryDTO.PageSize + } + return paramMap +} + +func (req *TaobaoUnideskRtaUserAdvertiserGetRequest) ToFileMap() map[string]interface{} { + fileMap := make(map[string]interface{}) + return fileMap +} diff --git a/defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go b/defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go index 77e7b1d..0e2fe1d 100644 --- a/defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go +++ b/defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go @@ -5,7 +5,7 @@ type TaobaoUnideskRtaToolsMonitorurlGetResponse struct { /* Result */ - Result MonitorUrlTopDTO `json:"request_id"` + Result MonitorUrlTopDTO `json:"result"` } type MonitorUrlTopDTO struct { diff --git a/defaultability/response/TaobaoUnideskRtaUserAdvertiserGetResponse.go b/defaultability/response/TaobaoUnideskRtaUserAdvertiserGetResponse.go new file mode 100644 index 0000000..a010900 --- /dev/null +++ b/defaultability/response/TaobaoUnideskRtaUserAdvertiserGetResponse.go @@ -0,0 +1,20 @@ +package response + +type TaobaoUnideskRtaUserAdvertiserGetResponse struct { + + /* + Result + */ + Result []AdvertiserTopDTO `json:"result"` +} + +type AdvertiserTopDTO struct { + Id int64 `json:"id"` + Name string `json:"name"` + Media string `json:"media"` + Status int `json:"status"` + CustomerName string `json:"customer_name"` + MasterId int64 `json:"master_id"` + OrganizationName string `json:"organization_name"` + OptimizeType int `json:"optimize_type"` +}