This commit is contained in:
邹宗楠
2022-04-14 18:20:41 +08:00
parent a80506cb43
commit 2a62826b1a
7 changed files with 61 additions and 63 deletions

View File

@@ -2,7 +2,6 @@ package misc
import ( import (
"fmt" "fmt"
"git.rosy.net.cn/jx-callback/business/partner/delivery"
"sync" "sync"
"time" "time"
@@ -389,7 +388,7 @@ func Init() {
}) })
// 每五分钟轮询一次推送骑手信息坐标给美团 // 每五分钟轮询一次推送骑手信息坐标给美团
ScheduleTimerFuncByInterval(func() { ScheduleTimerFuncByInterval(func() {
delivery.GetOrderRiderInfoToPlatform("") //delivery.GetOrderRiderInfoToPlatform("")
}, 10*time.Second, 5*time.Minute) }, 10*time.Second, 5*time.Minute)
} }
if configs, err := dao.QueryConfigs(dao.GetDB(), "ebaiStorePageCookie", model.ConfigTypeCookie, ""); err == nil { if configs, err := dao.QueryConfigs(dao.GetDB(), "ebaiStorePageCookie", model.ConfigTypeCookie, ""); err == nil {

View File

@@ -821,7 +821,7 @@ func GetOrders(db *DaoDB, ids []int64, isIncludeSku, isIncludeFake bool, fromDat
DISTINCT t1.*, DISTINCT t1.*,
-- CAST(IF(t1.earning_price <> 0, t1.earning_price, IF(t1.shop_price <> 0 && t1.shop_price < t1.sale_price, t1.shop_price, t1.sale_price) * IF(t1.order_pay_percentage > 0, t1.order_pay_percentage, %d) / 100) AS SIGNED) earning_price, -- CAST(IF(t1.earning_price <> 0, t1.earning_price, IF(t1.shop_price <> 0 && t1.shop_price < t1.sale_price, t1.shop_price, t1.sale_price) * IF(t1.order_pay_percentage > 0, t1.order_pay_percentage, %d) / 100) AS SIGNED) earning_price,
t2.status waybill_status, t2.courier_name, t2.courier_mobile, t2.status waybill_status, t2.courier_name, t2.courier_mobile,
t2.actual_fee, t2.desired_fee, t2.waybill_created_at, t2.waybill_finished_at,t2.vendor_waybill_id2, t2.actual_fee, t2.desired_fee, t2.waybill_created_at, t2.waybill_finished_at,
t5.pay_percentage, t5.old_pay_percentage, t5.market_man_phone, tu.name market_man_name, t5.pay_percentage, t5.old_pay_percentage, t5.market_man_phone, tu.name market_man_name,
t5.operator_phone, t5.operator_phone2, t5.operator_phone3, tu1.name operator_name, tu2.name operator_name2, tu3.name operator_name3, t5.operator_phone, t5.operator_phone2, t5.operator_phone3, tu1.name operator_name, tu2.name operator_name2, tu3.name operator_name3,
t6.vendor_pay_percentage, t6.vendor_pay_percentage,

View File

@@ -136,7 +136,7 @@ type GoodsOrder struct {
VendorWaybillID string `orm:"column(vendor_waybill_id);size(48)" json:"vendorWaybillID"` VendorWaybillID string `orm:"column(vendor_waybill_id);size(48)" json:"vendorWaybillID"`
WaybillVendorID int `orm:"column(waybill_vendor_id)" json:"waybillVendorID"` // 表示当前承运商,-1表示还没有安排 WaybillVendorID int `orm:"column(waybill_vendor_id)" json:"waybillVendorID"` // 表示当前承运商,-1表示还没有安排
VendorWaybillId2 string `orm:"column(vendor_waybill_id2)" json:"vendorWaybillId2"` // 美团标志id //VendorWaybillId2 string `orm:"column(vendor_waybill_id2)" json:"vendorWaybillId2"` // 美团标志id
AdjustCount int8 `json:"adjustCount"` // 调整单(次数) AdjustCount int8 `json:"adjustCount"` // 调整单(次数)
DeliveryFlag int8 `json:"deliveryFlag"` // 第1位为1表示禁止调度器调度三方配送 DeliveryFlag int8 `json:"deliveryFlag"` // 第1位为1表示禁止调度器调度三方配送
DuplicatedCount int `json:"-"` // 重复新订单消息数这个一般不是由于消息重发造成的消息重发由OrderStatus过滤一般是业务逻辑造成的 DuplicatedCount int `json:"-"` // 重复新订单消息数这个一般不是由于消息重发造成的消息重发由OrderStatus过滤一般是业务逻辑造成的

View File

@@ -84,7 +84,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *dadaapi.CallbackMsg) (retVal *dadaap
} }
case dadaapi.OrderStatusDelivering: case dadaapi.OrderStatusDelivering:
order.Status = model.WaybillStatusDelivering order.Status = model.WaybillStatusDelivering
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID) //delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID)
case dadaapi.OrderStatusFinished: case dadaapi.OrderStatusFinished:
order.Status = model.WaybillStatusDelivered order.Status = model.WaybillStatusDelivered
case dadaapi.OrderStatusCanceled, dadaapi.OrderStatusExpired: case dadaapi.OrderStatusCanceled, dadaapi.OrderStatusExpired:

View File

@@ -2,7 +2,6 @@ package delivery
import ( import (
"fmt" "fmt"
"git.rosy.net.cn/baseapi/platformapi/mtpsapi"
"math" "math"
"time" "time"
@@ -164,58 +163,58 @@ func OnWaybillCreated(waybill *model.Waybill) {
//40-骑手已送达C端商品已送达B端骑手已送达 //40-骑手已送达C端商品已送达B端骑手已送达
//100-配送单已取消C端商家已接单B端配送已取消 //100-配送单已取消C端商家已接单B端配送已取消
//注:若同步配送状态为“配送单已取消”,接口仍支持继续同步配送状态。 说明商家如未上传此信息则平台默认值为20现已要求必传 //注:若同步配送状态为“配送单已取消”,接口仍支持继续同步配送状态。 说明商家如未上传此信息则平台默认值为20现已要求必传
func GetOrderRiderInfoToPlatform(orderId string) { //func GetOrderRiderInfoToPlatform(orderId string) {
params := make(map[string]interface{}, 0) // params := make(map[string]interface{}, 0)
params["brandID"] = 0 // params["brandID"] = 0
params["statuss"] = 20 // params["statuss"] = 20
params["isDateFinish"] = false // params["isDateFinish"] = false
params["isIncludeFake"] = true // params["isIncludeFake"] = true
params["mustInvoice"] = false // params["mustInvoice"] = false
params["adjustCount"] = 0 // params["adjustCount"] = 0
params["waybillVendorIDs"] = `[101,102,103]` // params["waybillVendorIDs"] = `[101,102,103]`
if orderId != "" { // 订单id会忽略其他参数 // if orderId != "" { // 订单id会忽略其他参数
params["keyword"] = orderId // params["keyword"] = orderId
} // }
//params["offset"] = 0 // //params["offset"] = 0
//params["pageSize"] = 10000 // //params["pageSize"] = 10000
// 查询三天内一万条数据 // // 查询三天内一万条数据
orders, _, err := dao.GetOrders(dao.GetDB(), nil, false, true, time.Now().Add(-24*3*time.Hour).Format("2006-01-02"), time.Now().Format("2006-01-02"), false, nil, false, "", params, 0, 10000) // orders, _, err := dao.GetOrders(dao.GetDB(), nil, false, true, time.Now().Add(-24*3*time.Hour).Format("2006-01-02"), time.Now().Format("2006-01-02"), false, nil, false, "", params, 0, 10000)
if err != nil { // if err != nil {
globals.SugarLogger.Errorf("GetOrder err :%v", err) // globals.SugarLogger.Errorf("GetOrder err :%v", err)
return // return
} // }
//
for _, v := range orders { // for _, v := range orders {
var riderInfo *mtpsapi.RiderInfo // var riderInfo *mtpsapi.RiderInfo
if handlerInfo := partner.GetDeliveryPlatformFromVendorID(v.WaybillVendorID); handlerInfo != nil { // if handlerInfo := partner.GetDeliveryPlatformFromVendorID(v.WaybillVendorID); handlerInfo != nil {
riderInfo, err = handlerInfo.Handler.GetRiderInfo(v.VendorOrderID, utils.Str2Int64(v.VendorWaybillId2), v.VendorWaybillID) // riderInfo, err = handlerInfo.Handler.GetRiderInfo(v.VendorOrderID, utils.Str2Int64(v.VendorWaybillId2), v.VendorWaybillID)
if err != nil { // if err != nil {
globals.SugarLogger.Errorf("Get Order waybill rider info err :%v", err) // globals.SugarLogger.Errorf("Get Order waybill rider info err :%v", err)
continue // continue
} // }
} // }
//
// 目前只推送美团骑手信息 // // 目前只推送美团骑手信息
switch v.VendorID { // switch v.VendorID {
case model.VendorIDMTWM: // 美团发单 // case model.VendorIDMTWM: // 美团发单
paramsMap := utils.Struct2Map(riderInfo, "", true) // paramsMap := utils.Struct2Map(riderInfo, "", true)
if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil { // if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil {
if err := handler.GetOrderRider(v.VendorOrgCode, v.VendorOrderID, paramsMap); err != nil { // if err := handler.GetOrderRider(v.VendorOrgCode, v.VendorOrderID, paramsMap); err != nil {
globals.SugarLogger.Errorf("Error pushing meituan rider information :%v", err) // globals.SugarLogger.Errorf("Error pushing meituan rider information :%v", err)
} // }
} // }
case model.VendorIDELM: // 饿了么 // case model.VendorIDELM: // 饿了么
case model.VendorIDEBAI: // 饿百发单 // case model.VendorIDEBAI: // 饿百发单
//
case model.VendorIDJD: // 京东发单 // case model.VendorIDJD: // 京东发单
case model.VendorIDGD: // 美团发单 // case model.VendorIDGD: // 美团发单
case model.VendorIDYB: // 银豹发单 // case model.VendorIDYB: // 银豹发单
case model.VendorIDJDShop: // 京东商城 // case model.VendorIDJDShop: // 京东商城
case model.VendorIDWSC: // 微盟微商城 // case model.VendorIDWSC: // 微盟微商城
default: // default:
globals.SugarLogger.Errorf("Order source error, non system order") // globals.SugarLogger.Errorf("Order source error, non system order")
return // return
} // }
} // }
return // return
} //}

View File

@@ -235,7 +235,7 @@ func OnWaybillMsg(msg *fnpsapi.OrderStatusNottify) (resp *fnpsapi.CallbackRespon
order.Status = model.WaybillStatusCourierArrived order.Status = model.WaybillStatusCourierArrived
case fnpsapi.OrderStatusDelivering: // 2 配送中 case fnpsapi.OrderStatusDelivering: // 2 配送中
order.Status = model.WaybillStatusDelivering order.Status = model.WaybillStatusDelivering
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID) //delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID)
case fnpsapi.OrderStatusDelivered: // 3 已经送达 case fnpsapi.OrderStatusDelivered: // 3 已经送达
order.Status = model.WaybillStatusDelivered order.Status = model.WaybillStatusDelivered
case fnpsapi.OrderStatusAcceptCacle: // 4取消订单 case fnpsapi.OrderStatusAcceptCacle: // 4取消订单

View File

@@ -103,7 +103,7 @@ func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *m
order.Remark = order.CourierName + "" + order.CourierMobile order.Remark = order.CourierName + "" + order.CourierMobile
case mtpsapi.OrderStatusPickedUp: case mtpsapi.OrderStatusPickedUp:
order.Status = model.WaybillStatusDelivering order.Status = model.WaybillStatusDelivering
delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID) ///delivery.GetOrderRiderInfoToPlatform(order.VendorOrderID)
case mtpsapi.OrderStatusDeliverred: case mtpsapi.OrderStatusDeliverred:
order.Status = model.WaybillStatusDelivered order.Status = model.WaybillStatusDelivered
case mtpsapi.OrderStatusCanceled: case mtpsapi.OrderStatusCanceled: