This commit is contained in:
邹宗楠
2023-12-15 16:33:26 +08:00
parent 53c22d4468
commit 36c35ea717
3 changed files with 28 additions and 5 deletions

View File

@@ -192,7 +192,9 @@ func (c *BaseScheduler) SelfDeliverDelivered(order *model.GoodsOrder, userName s
err = utils.CallFuncLogError(func() error {
if err = partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID).SelfDeliverDelivered(order, userName); err != nil {
bill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
c.CancelWaybill(bill, partner.CancelWaybillReasonOther, partner.CancelWaybillReasonStrActive)
if bill.WaybillVendorID != model.VendorJXFakeWL {
c.CancelWaybill(bill, partner.CancelWaybillReasonOther, partner.CancelWaybillReasonStrActive)
}
}
return err
}, "SelfDeliverDelivered orderID:%s", order.VendorOrderID)

View File

@@ -72,6 +72,7 @@ var (
//100-配送单已取消C端商家已接单B端配送已取消
//注:若同步配送状态为“配送单已取消”,接口仍支持继续同步配送状态。 说明商家如未上传此信息则平台默认值为20现已要求必传
func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
var db = dao.GetDB()
params := make(map[string]interface{}, 0)
params["isDateFinish"] = false
params["isIncludeFake"] = true
@@ -85,7 +86,7 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
}
// 每五分钟查询当前订单信息待配送状态订单1
orders, _, err := dao.GetOrders(dao.GetDB(), nil, false, true, time.Now().Add(-24*time.Hour).Format("2006-01-02"), time.Now().Format("2006-01-02"), false, nil, false, "", params, 0, 10000)
orders, _, err := dao.GetOrders(db, nil, false, true, time.Now().Add(-24*time.Hour).Format("2006-01-02"), time.Now().Format("2006-01-02"), false, nil, false, "", params, 0, 10000)
if err != nil {
return
}
@@ -105,7 +106,7 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
}
if orderId == "" { // 订单id为空是,是定时轮询操作,不做此状态
waybillList, _ := dao.GetWaybills(dao.GetDB(), v.VendorOrderID, nil)
waybillList, _ := dao.GetWaybills(db, v.VendorOrderID, nil)
if len(waybillList) > 0 && waybillList[0].Status > model.WaybillStatusEndBegin {
continue
}
@@ -176,7 +177,7 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
continue
}
storeDetail, err := dao.GetStoreDetail(dao.GetDB(), v.JxStoreID, 0, "")
storeDetail, err := dao.GetStoreDetail(db, v.JxStoreID, 0, "")
if riderInfo.CourierPhone == "" {
if err == nil {
riderInfo.CourierPhone = storeDetail.Tel1
@@ -231,8 +232,25 @@ func GetOrderRiderInfoToPlatform(orderId string, wayBillStatus int) {
case model.VendorIDWSC: // 微盟微商城
continue
case model.VendorIDDD: // 抖店小时达
if riderInfo.ThirdCarrierOrderId == "" {
waybills, _ := dao.GetWaybills(db, v.VendorOrderID, nil)
if len(waybills) == model.NO {
store, _ := dao.GetStoreDetail(db, v.StoreID, v.VendorID, v.VendorOrgCode)
riderInfo.CourierName = "老板"
riderInfo.CourierPhone = store.Tel1
riderInfo.ThirdCarrierOrderId = v.VendorOrderID
} else {
for _, waybill := range waybills {
if waybill.Status >= model.OrderStatusDelivering && waybill.Status <= model.OrderStatusFinished {
riderInfo.CourierName = waybill.CourierName
riderInfo.CourierPhone = waybill.CourierMobile
riderInfo.ThirdCarrierOrderId = waybill.VendorWaybillID
continue
}
}
}
}
riderInfo.LogisticsProviderCode = tiktok_api.JxVendorId2TiktokCode(v.WaybillVendorID)
riderInfo.ThirdCarrierOrderId = v.VendorWaybillID
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)

View File

@@ -629,11 +629,14 @@ func (c *PurchaseHandler) SelfDeliverDelivered(order *model.GoodsOrder, userName
store, _ := dao.GetStoreDetail(db, jxutils.GetSaleStoreIDFromOrder(order), order.VendorID, order.VendorOrgCode)
riderInfo.CourierName = "老板"
riderInfo.CourierPhone = store.Tel1
riderInfo.ThirdCarrierOrderId = order.VendorOrderID
} else {
for _, v := range waybills {
if v.Status >= model.OrderStatusDelivering && v.Status <= model.OrderStatusFinished {
riderInfo.CourierName = v.CourierName
riderInfo.CourierPhone = v.CourierMobile
riderInfo.ThirdCarrierOrderId = v.VendorWaybillID
continue
}
}
}