From 763a6f35e912d1078895f3ef8ba0b74105983250 Mon Sep 17 00:00:00 2001 From: suyl <770236076@qq.com> Date: Mon, 26 Apr 2021 14:57:46 +0800 Subject: [PATCH] aa --- platformapi/pddapi/union.go | 26 +++++++++++++++++++++++--- platformapi/pddapi/union_test.go | 4 ++-- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/platformapi/pddapi/union.go b/platformapi/pddapi/union.go index f22d6d5f..1dbbdeff 100644 --- a/platformapi/pddapi/union.go +++ b/platformapi/pddapi/union.go @@ -6,14 +6,34 @@ const ( cthMediaID = 9180924964 ) +type GoodsOPidGenerateResult struct { + PIDGenerateResponse struct { + PIDList []struct { + CreateTime int `json:"create_time"` + MediaID int64 `json:"media_id"` + PidName string `json:"pid_name"` + PID string `json:"p_id"` + } `json:"p_id_list"` + RemainPidCount int `json:"remain_pid_count"` + RequestID string `json:"request_id"` + } `json:"p_id_generate_response"` +} + //创建推广位 -func (a *API) GoodsOPidGenerate(name string) (err error) { - _, err = a.AccessAPI("pdd.ddk.goods.pid.generate", false, map[string]interface{}{ +func (a *API) GoodsOPidGenerate(name string) (pid string, err error) { + result, err := a.AccessAPI("pdd.ddk.goods.pid.generate", false, map[string]interface{}{ "number": 1, "p_id_name_list": []string{"\"" + name + "\""}, "media_id": cthMediaID, }) - return err + if err == nil { + goodsOPidGenerateResult := &GoodsOPidGenerateResult{} + utils.Map2StructByJson(result, &goodsOPidGenerateResult, false) + if goodsOPidGenerateResult != nil { + pid = goodsOPidGenerateResult.PIDGenerateResponse.PIDList[0].PID + } + } + return pid, err } type ActivityOperationListResult struct { diff --git a/platformapi/pddapi/union_test.go b/platformapi/pddapi/union_test.go index dbc440c9..09cfde62 100644 --- a/platformapi/pddapi/union_test.go +++ b/platformapi/pddapi/union_test.go @@ -6,11 +6,11 @@ import ( ) func TestGoodsOPidGenerate(t *testing.T) { - err := api.GoodsOPidGenerate("冲天猴儿") + result, err := api.GoodsOPidGenerate("冲天猴儿5") if err != nil { t.Fatal(err) } - //t.Log(utils.Format4Output(result, false)) + t.Log(utils.Format4Output(result, false)) } func TestActivityOperationList(t *testing.T) {