From dfa544784db6e94854f03a5cecf89d831b9be9ed Mon Sep 17 00:00:00 2001 From: dylan Date: Tue, 13 Aug 2024 16:35:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=96=B0=E5=A2=9E=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- defaultability/Defaultability.go | 17 +++++++ ...obaoUnideskRtaToolsMonitorurlGetRequest.go | 49 +++++++++++++++++++ ...baoUnideskRtaToolsMonitorurlGetResponse.go | 14 ++++++ 3 files changed, 80 insertions(+) create mode 100644 defaultability/request/TaobaoUnideskRtaToolsMonitorurlGetRequest.go create mode 100644 defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go diff --git a/defaultability/Defaultability.go b/defaultability/Defaultability.go index 3f2eca2..76a69cb 100644 --- a/defaultability/Defaultability.go +++ b/defaultability/Defaultability.go @@ -116,3 +116,20 @@ func (ability *Defaultability) TaobaoTmcUserPermit(req *request.TaobaoTmcUserPer } return &respStruct, err } + +/* +UD工具-获取deeplink链接 +*/ +func (ability *Defaultability) TaobaoUnideskRtaToolsMonitorurlGet(req *request.TaobaoUnideskRtaToolsMonitorurlGetRequest) (*response.TaobaoUnideskRtaToolsMonitorurlGetResponse, error) { + if ability.Client == nil { + return nil, errors.New("Defaultability topClient is nil") + } + var jsonStr, err = ability.Client.Execute("taobao.unidesk.rta.tools.monitorurl.get", req.ToMap(), req.ToFileMap()) + var respStruct = response.TaobaoUnideskRtaToolsMonitorurlGetResponse{} + if err != nil { + log.Println("taobaoUnideskRtaToolsMonitorurlGet error", err) + return &respStruct, err + } + err = util.HandleJsonResponse(jsonStr, &respStruct) + return &respStruct, err +} diff --git a/defaultability/request/TaobaoUnideskRtaToolsMonitorurlGetRequest.go b/defaultability/request/TaobaoUnideskRtaToolsMonitorurlGetRequest.go new file mode 100644 index 0000000..9b8d4c5 --- /dev/null +++ b/defaultability/request/TaobaoUnideskRtaToolsMonitorurlGetRequest.go @@ -0,0 +1,49 @@ +package request + +type TaobaoUnideskRtaToolsMonitorurlGetRequest struct { + MonitorUrlTopQueryDto *MonitorUrlTopQueryDto `json:"monitor_url_top_query_dto" required:"true" ` +} + +type MonitorUrlTopQueryDto struct { + /* + 计划组ID */ + CampaignId *int64 `json:"campaign_id" required:"true" ` + /* + 落地页 */ + LandingPage *string `json:"landing_page" required:"true" ` + /* + 广告主ID */ + AdvertiserId *int64 `json:"advertiser_id" required:"true" ` +} + +func (s *TaobaoUnideskRtaToolsMonitorurlGetRequest) setCampaignId(v int64) *TaobaoUnideskRtaToolsMonitorurlGetRequest { + s.MonitorUrlTopQueryDto.CampaignId = &v + return s +} +func (s *TaobaoUnideskRtaToolsMonitorurlGetRequest) setLandingPage(v string) *TaobaoUnideskRtaToolsMonitorurlGetRequest { + s.MonitorUrlTopQueryDto.LandingPage = &v + return s +} +func (s *TaobaoUnideskRtaToolsMonitorurlGetRequest) SetAdvertiserId(v int64) *TaobaoUnideskRtaToolsMonitorurlGetRequest { + s.MonitorUrlTopQueryDto.AdvertiserId = &v + return s +} + +func (req *TaobaoUnideskRtaToolsMonitorurlGetRequest) ToMap() map[string]interface{} { + paramMap := make(map[string]interface{}) + if req.MonitorUrlTopQueryDto.CampaignId != nil { + paramMap["campaign_id"] = *req.MonitorUrlTopQueryDto.CampaignId + } + if req.MonitorUrlTopQueryDto.LandingPage != nil { + paramMap["landing_page"] = *req.MonitorUrlTopQueryDto.LandingPage + } + if req.MonitorUrlTopQueryDto.AdvertiserId != nil { + paramMap["advertiser_id"] = *req.MonitorUrlTopQueryDto.AdvertiserId + } + return paramMap +} + +func (req *TaobaoUnideskRtaToolsMonitorurlGetRequest) ToFileMap() map[string]interface{} { + fileMap := make(map[string]interface{}) + return fileMap +} diff --git a/defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go b/defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go new file mode 100644 index 0000000..77e7b1d --- /dev/null +++ b/defaultability/response/TaobaoUnideskRtaToolsMonitorurlGetResponse.go @@ -0,0 +1,14 @@ +package response + +type TaobaoUnideskRtaToolsMonitorurlGetResponse struct { + + /* + Result + */ + Result MonitorUrlTopDTO `json:"request_id"` +} + +type MonitorUrlTopDTO struct { + DeeplinkUrl string `json:"deeplink_url"` + ClickUrl string `json:"click_url"` +}