70 lines
1.9 KiB
Go
70 lines
1.9 KiB
Go
package controllers
|
|
|
|
import (
|
|
"git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
|
"git.rosy.net.cn/baseapi/utils"
|
|
"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"
|
|
"strings"
|
|
)
|
|
|
|
type TiktokController struct {
|
|
web.Controller
|
|
}
|
|
|
|
// CallbackTiktokOrderMsg 抖店用户下单订单推送 (tiktokStore)
|
|
func (t *TiktokController) CallbackTiktokOrderMsg() {
|
|
// 1.防伪校验
|
|
resp, byteList := api.TiktokStore.EventSignChange(t.Ctx.Request)
|
|
if resp.Code != 0 {
|
|
t.Data["json"] = resp
|
|
t.ServeJSON()
|
|
return
|
|
}
|
|
if strings.Contains(string(byteList), "\"msg_id\":\"0\"") {
|
|
t.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackSuccessCode, Msg: tiktok_api.CallbackSuccess}
|
|
t.ServeJSON()
|
|
return
|
|
}
|
|
|
|
// 2.参数解析
|
|
orderStatus, storeMap, resp := api.TiktokStore.CreateOrderCallback(byteList)
|
|
if resp.Code != 0 {
|
|
t.Data["json"] = resp
|
|
t.ServeJSON()
|
|
return
|
|
}
|
|
globals.SugarLogger.Debugf("storeMap %s", utils.Format4Output(storeMap, false))
|
|
// 判断订单来源(门店所属菜市,果园,其他方)
|
|
//for k, _ := range storeMap {
|
|
// vendorStoreId := utils.Int64ToStr(k)
|
|
// storeDetail, err := dao.GetStoreDetailByVendorStoreID(dao.GetDB(), vendorStoreId, model.VendorIDDD, "")
|
|
// if err != nil {
|
|
// globals.SugarLogger.Errorf("门店信息获取失败: %s", err)
|
|
// continue
|
|
// }
|
|
// if storeDetail != nil {
|
|
// continue
|
|
// } else {
|
|
// // 进入这里面就可能是果园或者其他三放的订单了,将当前信息推送过去
|
|
// }
|
|
//}
|
|
|
|
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()
|
|
|
|
}
|