package controllers import ( "encoding/json" "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api" "git.rosy.net.cn/jx-callback/business/jxstore/common" "git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/partner/purchase/tiktok_store" "git.rosy.net.cn/jx-callback/globals" "git.rosy.net.cn/jx-callback/globals/api" "github.com/astaxie/beego/server/web" "time" ) type TiktokController struct { web.Controller } // CallbackTiktokOrderMsg 抖店用户下单订单推送 (tiktokStore) func (t *TiktokController) CallbackTiktokOrderMsg() { // 1.防伪校验 resp := api.TiktokStore.EventSignChange(t.Ctx.Request) if resp.Code != 0 { t.Data["json"] = resp t.ServeJSON() return } // 2.参数解析 orderStatus, resp := api.TiktokStore.CreateOrderCallback(t.Ctx.Request) globals.SugarLogger.Debug("抖音订单回调数据打印测试===========", orderStatus) if resp.Code != 0 { t.Data["json"] = resp t.ServeJSON() return } for k, v := range orderStatus { for _, callback := range v { resp2 := tiktok_store.OnOrderMsg(k, callback) if resp2.Code != 0 { t.Data["json"] = resp2 t.ServeJSON() return } } } t.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackSuccessCode, Msg: tiktok_api.CallbackSuccess} t.ServeJSON() } // CallbackTiktokTokenMsg 抖音用户授权 func (c *TiktokController) CallbackTiktokTokenMsg() { code := c.Ctx.Request.URL.Query().Get("code") globals.SugarLogger.Debugf("tictok callback callbackResponse:%s", code) result, err := api.TiktokStore.CreateToken(code) if err != nil { globals.SugarLogger.Debugf("tictok callback create token:%s", err) c.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackFailCode, Msg: tiktok_api.CallbackFail} c.ServeJSON() return } result.ExpiresIn += time.Now().Unix() data, err := json.Marshal(result) if err != nil { globals.SugarLogger.Debugf("tictok callback Marshal token:%s", err) c.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackFailCode, Msg: tiktok_api.CallbackFail} c.ServeJSON() return } param := &model.VendorOrgCode{ VendorID: model.VendorIDDD, VendorOrgCode: result.ShopId, Comment: "抖音授权", VendorType: "platform", IsJxCat: 1, IsOpen: 1, EmpowerURL: "", StoreBrandName: result.ShopName, Token: string(data), AppKey: "", // web.AppConfig.DefaultString("tiktokShopAppId", "7136048270014416392"), AppSecret: "", // web.AppConfig.DefaultString("tiktokShopAppSecret", "c397aa9f-3927-47c4-8cfe-4d84e02602e0") } if err := common.AddVendorOrgCode(nil, param); err != nil { globals.SugarLogger.Debugf("tictok callback insert token:%s", err) c.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackFailCode, Msg: tiktok_api.CallbackFail} c.ServeJSON() return } c.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackSuccessCode, Msg: tiktok_api.CallbackSuccess} c.ServeJSON() }