From 0d5c284c21e4d270432d4b71a96206be35235811 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 11 Oct 2023 15:13:38 +0800 Subject: [PATCH] 1 --- .../jxcallback/auto_delivery/auto_delivery.go | 22 +++++++++++-------- .../jxcallback/scheduler/defsch/defsch_ext.go | 3 +++ business/jxstore/misc/misc.go | 9 ++++---- business/partner/delivery/rider.go | 8 +++++-- .../purchase/tao_vegetable/order_utils.go | 4 ++-- 5 files changed, 29 insertions(+), 17 deletions(-) diff --git a/business/jxcallback/auto_delivery/auto_delivery.go b/business/jxcallback/auto_delivery/auto_delivery.go index 614433e88..2798b0c7f 100644 --- a/business/jxcallback/auto_delivery/auto_delivery.go +++ b/business/jxcallback/auto_delivery/auto_delivery.go @@ -3,6 +3,8 @@ package auto_delivery import ( "crypto/rand" "encoding/json" + "fmt" + "git.rosy.net.cn/baseapi/platformapi/tao_vegetable" "git.rosy.net.cn/jx-callback/business/jxcallback/scheduler/defsch" "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" "git.rosy.net.cn/jx-callback/business/partner" @@ -131,7 +133,7 @@ func AutoSettingFakeDelivery() { } } - for _, v := range orderList { + for _, order := range orderList { if len(riderListInfo[riderKey]) == model.NO { // 骑手列表 configRiderList, err := dao.QueryConfigs(db, "riderList", "Sys", "") @@ -152,17 +154,18 @@ func AutoSettingFakeDelivery() { if randTime >= int64(len(riderListInfo[riderKey])) { randTime = int64(len(riderListInfo[riderKey])) - 1 } - if (v.PhoneAscription == "" || strings.Split(v.PhoneAscription, "-")[0] != model.PhoneAscriptionAddressYes) && v.VendorID == model.VendorIDDD { + if (order.PhoneAscription == "" || strings.Split(order.PhoneAscription, "-")[0] != model.PhoneAscriptionAddressYes) && order.VendorID == model.VendorIDDD { continue } // 自动拣货 - if v.Status < model.OrderStatusFinishedPickup { // 未拣货 - handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID) - flag := model.IsOrderDeliveryByStore(v) || model.IsOrderDeliveryBySelf(v) - if err := handler.PickupGoods(v, flag, jxcontext.AdminCtx.GetUserName()); err != nil { - globals.SugarLogger.Errorf("自动拣货错误:[%v]", err) + if order.Status < model.OrderStatusFinishedPickup { // 未拣货 + handler := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID) + flag := model.IsOrderDeliveryByStore(order) || model.IsOrderDeliveryBySelf(order) + if err := handler.PickupGoods(order, flag, jxcontext.AdminCtx.GetUserName()); err != nil { + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusPickedUp, fmt.Sprintf("自动拣货错误:[%v]", err)) break } + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusPickedUp, "fake自动拣货,已拣货") } //自动发单 if len(riderListInfo[riderKey]) == 0 { @@ -170,10 +173,11 @@ func AutoSettingFakeDelivery() { break } for riderName, riderPhone := range riderListInfo[riderKey][randTime] { - if err := defsch.FixedScheduler.SelfDeliveringAndUpdateStatus(jxcontext.AdminCtx, v.VendorOrderID, v.VendorID, jxcontext.AdminCtx.GetUserName(), riderName, riderPhone); err != nil { - globals.SugarLogger.Errorf("自动发货错误:[%v]", err) + if err := defsch.FixedScheduler.SelfDeliveringAndUpdateStatus(jxcontext.AdminCtx, order.VendorOrderID, order.VendorID, jxcontext.AdminCtx.GetUserName(), riderName, riderPhone); err != nil { + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusPickedUp, fmt.Sprintf("自动发货错误:[%v]", err)) break } + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusCallRider, "自动发货,出库") } } diff --git a/business/jxcallback/scheduler/defsch/defsch_ext.go b/business/jxcallback/scheduler/defsch/defsch_ext.go index b63154176..6e364b402 100644 --- a/business/jxcallback/scheduler/defsch/defsch_ext.go +++ b/business/jxcallback/scheduler/defsch/defsch_ext.go @@ -112,6 +112,9 @@ func (s *DefScheduler) SelfDeliveringAndUpdateStatus(ctx *jxcontext.Context, ven VendorOrgCode: order.VendorOrgCode, } err = dao.CreateEntity(dao.GetDB(), bill) + order.VendorWaybillID = order.VendorOrderID + order.WaybillVendorID = model.VendorJXFakeWL + dao.UpdateEntity(dao.GetDB(), order, "VendorWaybillID", "WaybillVendorID") } return err }() diff --git a/business/jxstore/misc/misc.go b/business/jxstore/misc/misc.go index 937c1c586..0935c3b33 100644 --- a/business/jxstore/misc/misc.go +++ b/business/jxstore/misc/misc.go @@ -2,6 +2,7 @@ package misc import ( "fmt" + "git.rosy.net.cn/jx-callback/business/jxcallback/auto_delivery" "sync" "time" @@ -216,10 +217,10 @@ func Init() { }, 10*time.Second, 5*time.Minute) // (自动发单拣货,设置骑手) 刷单用 - //ScheduleTimerFuncByInterval(func() { - // auto_delivery.Init() // 初始化骑手列表 - // auto_delivery.AutoSettingFakeDelivery() - //}, 10*time.Second, 5*time.Minute) + ScheduleTimerFuncByInterval(func() { + auto_delivery.Init() // 初始化骑手列表 + auto_delivery.AutoSettingFakeDelivery() + }, 10*time.Second, 5*time.Minute) // 定时任务更新负责人信息 ScheduleTimerFunc("RefreshStoreOperator", func() { diff --git a/business/partner/delivery/rider.go b/business/partner/delivery/rider.go index b0ec98f49..11f9107d3 100644 --- a/business/partner/delivery/rider.go +++ b/business/partner/delivery/rider.go @@ -445,7 +445,9 @@ func UpdateFakeWayBillToTiktok() { if handler != nil { order, _ := partner.CurOrderManager.LoadOrder(fakeWayBill[i].VendorOrderID, fakeWayBill[i].OrderVendorID) if err := handler.GetOrderRider(fakeWayBill[i].VendorOrgCode, order.VendorStoreID, paramsMap); err != nil { - globals.SugarLogger.Debugf("Fake Pull Rider Info Err :%s--%s--%v", riderInfo.OrderId, riderInfo.ThirdCarrierOrderId, err) + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusDelivery, fmt.Sprintf("Fake Pull Rider Info Err :%s--%s--%v", riderInfo.OrderId, riderInfo.ThirdCarrierOrderId, err)) + } else { + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusDelivery, "订单配送中") } } @@ -479,7 +481,9 @@ func UpdateFakeWayBillToTiktok() { // 饿百订单推送订单送达 if fakeWayBill[i].OrderVendorID == model.VendorIDEBAI || fakeWayBill[i].OrderVendorID == model.VendorIDTaoVegetable || fakeWayBill[i].OrderVendorID == model.VendorIDMTWM { if err := handler.Swtich2SelfDelivered(order, "JingXiAdmin"); err != nil { - globals.SugarLogger.Errorf("Swtich2SelfDelivered err := %v", err) + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusDeliveryOver, fmt.Sprintf("%v", err)) + } else { + partner.CurOrderManager.OnOrderMsg(order, tao_vegetable.OrderStatusDeliveryOver, "订单送达") } } diff --git a/business/partner/purchase/tao_vegetable/order_utils.go b/business/partner/purchase/tao_vegetable/order_utils.go index cce0a5a7b..6dd5d5466 100644 --- a/business/partner/purchase/tao_vegetable/order_utils.go +++ b/business/partner/purchase/tao_vegetable/order_utils.go @@ -92,8 +92,8 @@ func OrderStatusChangeDelivery(order *model.GoodsOrder, orderStatus string) *req } if param.WorkCallbackRequest.DelivererName == nil || param.WorkCallbackRequest.DelivererPhone == nil { - param.WorkCallbackRequest.DelivererName = utils.String2Pointer(storeDetail.Tel1) - param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer("门店老板") + param.WorkCallbackRequest.DelivererName = utils.String2Pointer("门店老板") + param.WorkCallbackRequest.DelivererPhone = utils.String2Pointer(storeDetail.Tel1) param.WorkCallbackRequest.DelivererCompany = utils.String2Pointer(tao_vegetable.TaoDeliveryTypeSELF) param.WorkCallbackRequest.LogisticsNo = utils.String2Pointer(order.VendorOrderID + "_1") }