From e2a930632ead1b626df861a5f6767200248f2e07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 11 Oct 2022 14:01:26 +0800 Subject: [PATCH] 1 --- .../partner/purchase/tiktok_store/order.go | 34 +++++++++++++------ controllers/tiktok_order.go | 11 +++--- globals/globals.go | 2 -- 3 files changed, 29 insertions(+), 18 deletions(-) diff --git a/business/partner/purchase/tiktok_store/order.go b/business/partner/purchase/tiktok_store/order.go index bbcad868d..8438a9aba 100644 --- a/business/partner/purchase/tiktok_store/order.go +++ b/business/partner/purchase/tiktok_store/order.go @@ -104,7 +104,7 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID s InvoiceTitle: "", InvoiceTaxerID: "", InvoiceEmail: "", - VendorOrgCode: "", + VendorOrgCode: vendorOrgCode, } // 本地获取订单记录 orderSeq, _ := dao.GetVendorOrderNumber(dao.GetDB(), model.VendorIDDD, order.VendorStoreID) @@ -241,7 +241,7 @@ func (c *PurchaseHandler) onOrderMsg(msgId, orderId string, msg interface{}) (re } // 组装订单状态变化 - status := c.callbackMsg2Status(msgId, orderId, msg) + status, appOrgCode := c.callbackMsg2Status(msgId, orderId, msg) // 校验重复消息 if partner.CurOrderManager.GetStatusDuplicatedCount(status) > 0 { return tiktokShop.Err2CallbackResponse(nil, "") @@ -249,12 +249,13 @@ func (c *PurchaseHandler) onOrderMsg(msgId, orderId string, msg interface{}) (re // 已经支付的订单,当做新订单创建在平台内部 if msgId == tiktokShop.CallbackPayOrderMsgTagId { - order, err := c.GetOrder("", orderId, "") // 获取平台订单详情,制作本地订单 + order, err := c.GetOrder(utils.Int64ToStr(appOrgCode), orderId, "") // 获取平台订单详情,制作本地订单 if err != nil { return tiktokShop.Err2CallbackResponse(err, "") } - if err := partner.CurOrderManager.OnOrderNew(order, c.callbackMsg2Status(msgId, orderId, msg)); err != nil { + status2, _ := c.callbackMsg2Status(msgId, orderId, msg) + if err := partner.CurOrderManager.OnOrderNew(order, status2); err != nil { return tiktokShop.Err2CallbackResponse(err, "") } @@ -299,7 +300,7 @@ func (c *PurchaseHandler) onOrderMsg(msgId, orderId string, msg interface{}) (re c.OnOrderDetail(orderMap, partner.UpdatedPeration) }) } - if err := partner.CurOrderManager.OnOrderStatusChanged(globals.TiktokShopCode, status); err != nil { + if err := partner.CurOrderManager.OnOrderStatusChanged(order.VendorOrgCode, status); err != nil { return tiktokShop.Err2CallbackResponse(err, "") } @@ -308,11 +309,12 @@ func (c *PurchaseHandler) onOrderMsg(msgId, orderId string, msg interface{}) (re return tiktokShop.Err2CallbackResponse(err, "") } -func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interface{}) *model.OrderStatus { +func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interface{}) (*model.OrderStatus, int64) { orderStatus := &model.OrderStatus{} + var shopId int64 = 0 switch msgId { case tiktokShop.CallbackCreatedOrderMsgTagId: - return nil // 抖音新创建订单,未支付时本地不做创建,可能取消 + return nil, 0 // 抖音新创建订单,未支付时本地不做创建,可能取消 //orderMsg := msg.(*tiktokShop.CreateOrderData) //orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) //orderStatus.VendorStatus = utils.Int64ToStr(orderMsg.OrderStatus) @@ -326,8 +328,9 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.PayTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "101-支付回调" + shopId = orderMsg.ShopId case tiktokShop.CallbackWaitOrderMsgTagId: - return nil // 支付订单风控消息不处理 + return nil, 0 // 支付订单风控消息不处理 //orderMsg := msg.(*tiktokShop.WaitOrderData) //orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) //orderStatus.VendorStatus = utils.Int64ToStr(orderMsg.OrderStatus) @@ -341,6 +344,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.UpdateTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "108-卖家部分发货" + shopId = orderMsg.ShopId case tiktokShop.CallbackPartAllGoodsMsgTagId: orderMsg := msg.(*tiktokShop.BusinessDeliveryData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -348,6 +352,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.UpdateTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "102-卖家发货完成" + shopId = orderMsg.ShopId case tiktokShop.CallbackCancelOrderMsgTagId: orderMsg := msg.(*tiktokShop.CancelOrderData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -355,6 +360,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.CancelTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "106-取消订单" + shopId = orderMsg.ShopId case tiktokShop.CallbackSuccessOrderMsgTagId: orderMsg := msg.(*tiktokShop.SuccessOrderData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -362,6 +368,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.CompleteTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "103-确认收货" + shopId = orderMsg.ShopId case tiktokShop.CallbackWayBillChangeOrderMsgTagId: orderMsg := msg.(*tiktokShop.WayBillChangeData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -369,6 +376,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.UpdateTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "104-物流消息变更" + shopId = orderMsg.ShopId case tiktokShop.CallbackReceivingChangeOrderMsgTagId: orderMsg := msg.(*tiktokShop.ReceivingAddressChangeData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -376,6 +384,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.UpdateTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "105-收货地址变更" + shopId = orderMsg.ShopId case tiktokShop.CallbackChangeMoneyMsgTagId: orderMsg := msg.(*tiktokShop.UpdateAmountChangeData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -383,6 +392,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.ModifyTime) orderStatus.Status = vendorStatusToLocalStatus(orderMsg.OrderStatus) orderStatus.Remark = "109-卖家修改订单/运单金额" + shopId = orderMsg.ShopId case tiktokShop.CallbackApplyUpdateAddressMsgTagId: orderMsg := msg.(*tiktokShop.BuyerUpdateWayBillData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -390,6 +400,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = time.Now() orderStatus.Status = model.OrderStatusUnknown orderStatus.Remark = "111-买家收货消息变更" + shopId = orderMsg.ShopId case tiktokShop.CallbackBusinessRemarkMsgTagId: orderMsg := msg.(*tiktokShop.BusinessUpdateRemakeData) orderStatus.VendorOrderID = utils.Int64ToStr(orderMsg.PId) @@ -397,6 +408,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = utils.Timestamp2Time(orderMsg.UpdateTime) orderStatus.Status = model.OrderStatusUnknown orderStatus.Remark = "113-添加备注:" + orderMsg.Remark + shopId = orderMsg.ShopId case tiktokShop.CallbackSendOrderTimeChangeMsgTagId: orderMsg := msg.(*tiktokShop.AppointmentChangeData) orderStatus.VendorOrderID = orderMsg.PId @@ -404,6 +416,7 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = time.Now() orderStatus.Status = model.OrderStatusUnknown orderStatus.Remark = "126-预约发货:" + shopId = orderMsg.ShopId case fakeFinishedPickup: // 应为需要同步京东,美团拣货功能制作的假拣货,抖音不存在拣货 orderMsg := msg.(*tiktokShop.FakePickUpGoodsData) orderStatus.VendorOrderID = orderMsg.PId @@ -411,14 +424,15 @@ func (c *PurchaseHandler) callbackMsg2Status(msgId, orderId string, msg interfac orderStatus.StatusTime = time.Now() orderStatus.Status = model.OrderStatusFinishedPickup orderStatus.Remark = "15-抖音假拣货:" + shopId = 0 default: - return nil + return nil, 0 } orderStatus.OrderType = model.OrderTypeOrder orderStatus.RefVendorOrderID = orderStatus.VendorOrderID orderStatus.VendorID = model.VendorIDDD orderStatus.RefVendorID = model.VendorIDDD - return orderStatus + return orderStatus, shopId } // 将抖音平台订单状态修改为本地通用状态(不好用) diff --git a/controllers/tiktok_order.go b/controllers/tiktok_order.go index b4f42da3b..d3bad5450 100644 --- a/controllers/tiktok_order.go +++ b/controllers/tiktok_order.go @@ -6,7 +6,6 @@ import ( "git.rosy.net.cn/jx-callback/globals" "git.rosy.net.cn/jx-callback/globals/api" "github.com/astaxie/beego/server/web" - beego "github.com/astaxie/beego/server/web" ) type TiktokController struct { @@ -15,11 +14,11 @@ type TiktokController struct { // CallbackTiktokOrderMsg 抖店用户下单订单推送 (tiktokStore) func (t *TiktokController) CallbackTiktokOrderMsg() { - if beego.BConfig.RunMode == "beta" { - t.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackSuccessCode, Msg: tiktok_api.CallbackSuccess} - t.ServeJSON() - return - } + //if beego.BConfig.RunMode == "beta" { + // t.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackSuccessCode, Msg: tiktok_api.CallbackSuccess} + // t.ServeJSON() + // return + //} // 1.防伪校验 resp := api.TiktokStore.EventSignChange(t.Ctx.Request) if resp.Code != 0 { diff --git a/globals/globals.go b/globals/globals.go index d8cae26e0..158606505 100644 --- a/globals/globals.go +++ b/globals/globals.go @@ -82,7 +82,6 @@ var ( IsAddEvent bool OutputDebugMsgLevel int - TiktokShopCode string ) func init() { @@ -170,7 +169,6 @@ func Init() { MtwmCode = web.AppConfig.DefaultString("mtwmAppID", "") Mtwm2Code = web.AppConfig.DefaultString("mtwmAppID2", "") - TiktokShopCode = web.AppConfig.DefaultString("tiktokShopAppId", "7136048270014416392") } func IsCallbackAlwaysReturnSuccess() bool {