京东门店修改日志+京东门店自送骑手同步+三方门店商品对比
This commit is contained in:
@@ -119,7 +119,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *dadaapi.CallbackMsg) (retVal *dadaap
|
||||
case model.VendorIDDD:
|
||||
Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2)
|
||||
tiktokStatusPush(order, msg.OrderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), goodsOrder.VendorOrgCode)
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI:
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI, model.VendorIDJD:
|
||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||
if goodsOrder.VendorID == model.VendorIDTaoVegetable && msg.OrderStatus == dadaapi.OrderStatusAccepted {
|
||||
tao_vegetable.PushDelivererChangeInfo(goodsOrder, order, tao.TaoDeliveryTypeDD)
|
||||
|
||||
@@ -323,7 +323,7 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify, resultParam *fnpsapi.ShortSta
|
||||
case model.VendorIDDD:
|
||||
Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2)
|
||||
tiktokStatusPush(order, orderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), good.VendorOrgCode)
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI:
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI, model.VendorIDJD:
|
||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||
if good.VendorID == model.VendorIDTaoVegetable && cc.OrderStatus == fnpsapi.OrderStatusAssigned {
|
||||
tao_vegetable.PushDelivererChangeInfo(good, order, tao.TaoDeliveryTypeFN)
|
||||
|
||||
@@ -143,7 +143,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *m
|
||||
case model.VendorIDDD:
|
||||
Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2)
|
||||
pushMTPSToTiktok(msg.Status, order, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), goodsOrder.VendorOrgCode)
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI:
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI, model.VendorIDJD:
|
||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||
if goodsOrder.VendorID == model.VendorIDTaoVegetable && msg.Status == mtpsapi.OrderStatusAccepted {
|
||||
tao_vegetable.PushDelivererChangeInfo(goodsOrder, order, tao.TaoDeliveryTypeMT)
|
||||
|
||||
@@ -222,7 +222,6 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
|
||||
riderInfo.ThirdCarrierOrderId = riderInfo.OrderId
|
||||
}
|
||||
|
||||
// 目前只推送美团骑手信息
|
||||
switch v.VendorID {
|
||||
case model.VendorIDMTWM: // 美团订单
|
||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil {
|
||||
@@ -245,15 +244,13 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
|
||||
}
|
||||
}
|
||||
case model.VendorIDJD: // 京东发单
|
||||
continue
|
||||
case model.VendorIDGD: // 美团发单
|
||||
continue
|
||||
case model.VendorIDYB: // 银豹发单
|
||||
continue
|
||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil {
|
||||
if err := handler.GetOrderRider(v.VendorOrgCode, v.VendorStoreID, utils.Struct2Map(riderInfo, "", true)); err != nil {
|
||||
globals.SugarLogger.Debugf("Error pushing meituan rider information :%s--%s--%v", v.VendorOrderID, utils.Format4Output(riderInfo, false), err)
|
||||
}
|
||||
}
|
||||
case model.VendorIDJDShop: // 京东商城
|
||||
continue
|
||||
case model.VendorIDWSC: // 微盟微商城
|
||||
continue
|
||||
case model.VendorIDDD: // 抖店小时达
|
||||
riderInfo.LogisticsProviderCode = tiktok_api.JxVendorId2TiktokCode(v.WaybillVendorID)
|
||||
if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil {
|
||||
@@ -261,8 +258,6 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
|
||||
globals.SugarLogger.Debugf("Error pushing tiktok rider information :%s--%s--%v", v.VendorOrderID, utils.Format4Output(riderInfo, false), err)
|
||||
}
|
||||
}
|
||||
case model.VendorIDJX: // 京西平台
|
||||
continue
|
||||
case model.VendorIDTaoVegetable: // 淘鲜达
|
||||
// 定时任务刷新骑手坐标
|
||||
if orderId == "" {
|
||||
|
||||
@@ -460,7 +460,7 @@ func OnWaybillMsg(urlIndex string, msg interface{}) (resp *sfps2.CallbackRespons
|
||||
case model.VendorIDDD:
|
||||
Lng, Lat, _ := partner.GetRidderPositionGetter(order.WaybillVendorID).GetRidderPosition(nil, order.VendorOrderID, order.VendorOrderID, order.VendorWaybillID, order.VendorWaybillID2)
|
||||
tiktokStatusPush(order, orderStatus, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), goodsOrder.VendorOrgCode)
|
||||
case model.VendorIDTaoVegetable, model.VendorIDMTWM, model.VendorIDEBAI:
|
||||
case model.VendorIDTaoVegetable, model.VendorIDMTWM, model.VendorIDEBAI, model.VendorIDJD:
|
||||
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID, order.Status) // 骑手位置更新
|
||||
if goodsOrder.VendorID == model.VendorIDTaoVegetable && orderStatus == sfps2.OrderStatusTakeOrder {
|
||||
tao_vegetable.PushDelivererChangeInfo(goodsOrder, order, tao.TaoDeliveryTypeSF)
|
||||
|
||||
@@ -440,7 +440,7 @@ func OnWaybillMsg(req *uuptapi.WaybillCallbackParam) (resp *uuptapi.CallbackResp
|
||||
case model.VendorIDDD:
|
||||
Lng, Lat, _ := partner.GetRidderPositionGetter(param.WaybillVendorID).GetRidderPosition(nil, param.VendorOrderID, param.VendorOrderID, param.VendorWaybillID, param.VendorWaybillID2)
|
||||
tiktokStatusPush(param, req.State, utils.Float64ToStr(Lng), utils.Float64ToStr(Lat), good.VendorOrgCode)
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI:
|
||||
case model.VendorIDMTWM, model.VendorIDTaoVegetable, model.VendorIDEBAI, model.VendorIDJD:
|
||||
delivery.GetOrderRiderInfoToPlatform(param.VendorOrderID, param.Status) // 骑手位置更新
|
||||
if good.VendorID == model.VendorIDTaoVegetable && req.State == uuptapi.StateRMGrabsOrder {
|
||||
tao_vegetable.PushDelivererChangeInfo(good, param, tao.TaoDeliveryTypeOther)
|
||||
|
||||
@@ -2,6 +2,8 @@ package jd
|
||||
|
||||
import (
|
||||
"git.rosy.net.cn/baseapi/platformapi/jdapi"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
)
|
||||
|
||||
func OnOrderMsg(msg *jdapi.CallbackOrderMsg, a *jdapi.API) (retVal *jdapi.CallbackResponse) {
|
||||
@@ -20,7 +22,9 @@ func OnWaybillMsg(msg *jdapi.CallbackDeliveryStatusMsg) (retVal *jdapi.CallbackR
|
||||
|
||||
func OnStoreMsg(msg *jdapi.CallbackOrderMsg) (retVal *jdapi.CallbackResponse) {
|
||||
if CurPurchaseHandler != nil {
|
||||
globals.SugarLogger.Debugf("==========msg := %s", utils.Format4Output(msg, false))
|
||||
retVal = CurPurchaseHandler.OnStoreMsg(AppKey2OrgCode(msg.AppKey), msg)
|
||||
globals.SugarLogger.Debugf("==========retVal := %s", utils.Format4Output(retVal, false))
|
||||
}
|
||||
return retVal
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package jd
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"net/url"
|
||||
|
||||
"git.rosy.net.cn/jx-callback/globals/api"
|
||||
@@ -179,5 +180,52 @@ func OnTokenChange(values url.Values) {
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, param map[string]interface{}) (err error) {
|
||||
logisticInfo := jdapi.ReceiveLogisticInfo{
|
||||
OrderId: param["order_id"].(string),
|
||||
DeliveryInfoList: nil,
|
||||
}
|
||||
deliveryInfoList := make([]jdapi.DeliveryInfo, 0, 0)
|
||||
deliverInfo := jdapi.DeliveryInfo{
|
||||
DeliveryManName: "暂无",
|
||||
DeliveryManPhone: "",
|
||||
|
||||
DeliveryCarrierNo: "9966", // 暂时未获取到写死
|
||||
DeliveryCarrierName: "达达配送", // 暂时未获取到写死
|
||||
DeliveryCarrierOrderNo: param["order_id"].(string),
|
||||
|
||||
FailReason: "",
|
||||
OperateTime: utils.GetCurTimeStr(),
|
||||
Operator: jxcontext.AdminCtx.GetUserName(),
|
||||
}
|
||||
switch param["logistics_status"].(int) {
|
||||
case 0:
|
||||
deliverInfo.DeliveryStatus = jdapi.JdDeliveryStatusNew
|
||||
case 10:
|
||||
// 接单、更换骑手、骑手到店、骑手取货 都需要填加:骑手姓名和电话
|
||||
deliverInfo.DeliveryStatus = jdapi.JdDeliveryStatusRiderTaking
|
||||
deliverInfo.DeliveryManName = param["courier_name"].(string)
|
||||
deliverInfo.DeliveryManPhone = param["courier_phone"].(string)
|
||||
case 15:
|
||||
deliverInfo.DeliveryStatus = jdapi.JdDeliveryStatusToStore
|
||||
deliverInfo.DeliveryManName = param["courier_name"].(string)
|
||||
deliverInfo.DeliveryManPhone = param["courier_phone"].(string)
|
||||
case 20:
|
||||
deliverInfo.DeliveryStatus = jdapi.JdDeliveryStatusDelivering
|
||||
deliverInfo.DeliveryManName = param["courier_name"].(string)
|
||||
deliverInfo.DeliveryManPhone = param["courier_phone"].(string)
|
||||
case 40:
|
||||
// 完成和取消状态不通过此接口发送通知消息
|
||||
return nil
|
||||
case 100:
|
||||
// 完成和取消状态不通过此接口发送通知消息
|
||||
return nil
|
||||
case 22:
|
||||
deliverInfo.DeliveryStatus = jdapi.JdDeliveryStatusFail
|
||||
}
|
||||
|
||||
deliveryInfoList = append(deliveryInfoList, deliverInfo)
|
||||
logisticInfo.DeliveryInfoList = deliveryInfoList
|
||||
|
||||
getAPI(vendorOrgCode).ReceiveLogisticInfoForOpenApiPlatform(logisticInfo)
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -350,9 +350,6 @@ func (c *PurchaseHandler) OnStoreMsg(vendorOrgCode string, msg *jdapi.CallbackOr
|
||||
}
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("OnStoreMsg==============%v", err)
|
||||
}
|
||||
return jdapi.Err2CallbackResponse(err, "")
|
||||
}
|
||||
|
||||
|
||||
@@ -40,9 +40,10 @@ func actOrderRules2Mtwm(actOrderRules []*model.ActOrderRule) (actDetails []*mtwm
|
||||
|
||||
func storeSku2ActData(act *model.Act2, actStoreSku []*model.ActStoreSku2, handler func(int8) bool) (actData []*mtwmapi.RetailDiscountActData) {
|
||||
orderLimit := 1
|
||||
if act.LimitCount > 0 {
|
||||
orderLimit = act.LimitCount
|
||||
}
|
||||
// orderLimit
|
||||
//if act.LimitCount > 0 {
|
||||
// orderLimit = act.LimitCount
|
||||
//}
|
||||
for _, v := range actStoreSku {
|
||||
if handler == nil || handler(v.SyncStatus) {
|
||||
dayLimit := -1
|
||||
|
||||
@@ -37,9 +37,9 @@ func actOrderRules2Mtwm(actOrderRules []*model.ActOrderRule) (actDetails []*mtwm
|
||||
|
||||
func storeSku2ActData(act *model.Act2, actStoreSku []*model.ActStoreSku2, handler func(int8) bool) (actData []*mtwmapi.RetailDiscountActData) {
|
||||
orderLimit := 1
|
||||
if act.LimitCount > 0 {
|
||||
orderLimit = act.LimitCount
|
||||
}
|
||||
//if act.LimitCount > 0 {
|
||||
// orderLimit = act.LimitCount
|
||||
//}
|
||||
for _, v := range actStoreSku {
|
||||
if handler == nil || handler(v.SyncStatus) {
|
||||
dayLimit := -1
|
||||
|
||||
@@ -262,9 +262,9 @@ func (p *PurchaseHandler) GetOrderRider(vendorOrgCode, vendorStoreID string, par
|
||||
vendorStoreID = order.VendorStoreID
|
||||
}
|
||||
|
||||
api := getAPI(vendorOrgCode, 0, vendorStoreID)
|
||||
apiObj := getAPI(vendorOrgCode, 0, vendorStoreID)
|
||||
// 同步骑手状态
|
||||
if err = api.OrderStatusAndPsInfoNew(param, vendorStoreID); err != nil {
|
||||
if err = apiObj.OrderStatusAndPsInfoNew(param, vendorStoreID); err != nil {
|
||||
partner.CurOrderManager.OnOrderMsg(order, param["opcode"].(string), "抖音订单三方配送状态信息回传记录异常:"+err.Error())
|
||||
}
|
||||
if err = SyncOrderRiderLine(vendorOrgCode, vendorStoreID, param); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user