Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop

This commit is contained in:
richboo111
2022-10-10 20:42:06 +08:00
4 changed files with 62 additions and 47 deletions

View File

@@ -586,13 +586,14 @@ func (p *PurchaseHandler) UpdateStoreSkusStatus(ctx *jxcontext.Context, vendorOr
api := getAPI(vendorOrgCode, storeID, vendorStoreID) api := getAPI(vendorOrgCode, storeID, vendorStoreID)
if status == model.SkuStatusNormal { // 上架 if status == model.SkuStatusNormal { // 上架
for _, v := range storeSkuList { for _, v := range storeSkuList {
// p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, false)
if err := api.EditStoreCommodity(&product_editV2_request.ProductEditV2Param{ if err := api.EditStoreCommodity(&product_editV2_request.ProductEditV2Param{
ProductId: utils.Str2Int64(v.VendorSkuID), ProductId: utils.Str2Int64(v.VendorSkuID),
Commit: true, Commit: true,
}); err != nil { }); err != nil {
failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDDD], "上架商品正常")...)
} else {
failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDDD], "上架商品异常")...) failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDDD], "上架商品异常")...)
} else {
failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDDD], "上架商品正常")...)
} }
} }
} else { // 下架 } else { // 下架
@@ -663,11 +664,12 @@ func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrg
tiktokApi := getAPI(storeSkuList[0].VendorOrgCode, storeID, vendorStoreID) tiktokApi := getAPI(storeSkuList[0].VendorOrgCode, storeID, vendorStoreID)
for _, v := range storeSkuList { for _, v := range storeSkuList {
err := tiktokApi.UpdateSkuStock(&sku_syncStock_request.SkuSyncStockParam{ err := tiktokApi.UpdateSkuStock(&sku_syncStock_request.SkuSyncStockParam{
SkuId: utils.Str2Int64(v.VendorSkuAttrId), SkuId: utils.Str2Int64(v.VendorSkuAttrId),
ProductId: utils.Str2Int64(v.VendorSkuID), ProductId: utils.Str2Int64(v.VendorSkuID),
Incremental: false, Incremental: false,
IdempotentId: "", IdempotentId: "",
StockNum: int64(v.Stock), StockNum: int64(v.Stock),
OutWarehouseId: vendorStoreID,
}) })
if err != nil { if err != nil {
failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDDD], "更新库存错误")...) failedList = append(failedList, putils.GetErrMsg2FailedSingleList(v, err, storeID, model.VendorChineseNames[model.VendorIDDD], "更新库存错误")...)

View File

@@ -0,0 +1,48 @@
package controllers
import (
"git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
"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"
)
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()
}

View File

@@ -5,54 +5,18 @@ import (
"git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api" "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/jxstore/common"
"git.rosy.net.cn/jx-callback/business/model" "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"
"git.rosy.net.cn/jx-callback/globals/api" "git.rosy.net.cn/jx-callback/globals/api"
"github.com/astaxie/beego/server/web" "github.com/astaxie/beego/server/web"
"time" "time"
) )
type TiktokController struct { type TiktokShopController struct {
web.Controller web.Controller
} }
// CallbackTiktokOrderMsg 抖用户下单订单推送 (tiktokStore) // TokenMsg 抖用户授权
func (t *TiktokController) CallbackTiktokOrderMsg() { func (c *TiktokShopController) TokenMsg() {
// 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") code := c.Ctx.Request.URL.Query().Get("code")
globals.SugarLogger.Debugf("tictok callback callbackResponse:%s", code) globals.SugarLogger.Debugf("tictok callback callbackResponse:%s", code)
result, err := api.TiktokStore.CreateToken(code) result, err := api.TiktokStore.CreateToken(code)

View File

@@ -184,7 +184,8 @@ func init() {
web.AutoRouter(&controllers.TicTocController{}) web.AutoRouter(&controllers.TicTocController{})
web.AutoRouter(&controllers.EnterpriseController{}) web.AutoRouter(&controllers.EnterpriseController{})
web.AutoRouter(&controllers.TiktokController{}) web.AutoRouter(&controllers.TiktokController{}) // 订单
web.AutoRouter(&controllers.TiktokShopController{}) // 门店授权
// 如下都是用于检测存活的空接口 // 如下都是用于检测存活的空接口
web.Any("/", func(ctx *beecontext.Context) { web.Any("/", func(ctx *beecontext.Context) {
ctx.WriteString("pong\n") ctx.WriteString("pong\n")