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