- wsc schedule.
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package wsc
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"sort"
|
||||
"time"
|
||||
|
||||
@@ -10,6 +11,7 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||
"git.rosy.net.cn/jx-callback/business/partner"
|
||||
"git.rosy.net.cn/jx-callback/business/partner/delivery/dada"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"git.rosy.net.cn/jx-callback/globals/api"
|
||||
)
|
||||
@@ -19,6 +21,10 @@ const (
|
||||
FakeOrderStatusFinishedPickup = 102
|
||||
)
|
||||
|
||||
const (
|
||||
maxAddFee = 300 // 最大增加费用,单位为分,超过不发三方配送了
|
||||
)
|
||||
|
||||
var (
|
||||
VendorStatus2StatusMap = map[int]int{
|
||||
weimobapi.OrderStatusWait4Pay: model.OrderStatusUnknown,
|
||||
@@ -148,14 +154,17 @@ func (p *PurchaseHandler) GetStatusActionTimeout(statusType, status int) time.Du
|
||||
}
|
||||
|
||||
func (p *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptIt bool, userName string) (err error) {
|
||||
if globals.EnableStoreWrite && globals.EnableWscStoreWrite {
|
||||
if !isAcceptIt {
|
||||
if !isAcceptIt {
|
||||
if globals.EnableStoreWrite && globals.EnableWscStoreWrite {
|
||||
err = api.WeimobAPI.CancelOrder(utils.Str2Int64(order.VendorOrderID), "")
|
||||
}
|
||||
} else {
|
||||
if jxutils.GetSaleStoreIDFromOrder(order) != 0 {
|
||||
// 微商城没有确认,只有取消,模拟接受
|
||||
p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), FakeOrderStatusAccepted)
|
||||
} else {
|
||||
if jxutils.GetSaleStoreIDFromOrder(order) == 0 {
|
||||
// 微商城没有确认,只有取消,模拟接受
|
||||
p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), FakeOrderStatusAccepted)
|
||||
} else {
|
||||
globals.SugarLogger.Debugf("weimob AcceptOrRefuseOrder orderID:%s can not find sale store", order.VendorOrderID)
|
||||
if globals.EnableStoreWrite && globals.EnableWscStoreWrite {
|
||||
err = api.WeimobAPI.CancelOrder(utils.Str2Int64(order.VendorOrderID), "没有找到合适的配送店")
|
||||
}
|
||||
}
|
||||
@@ -165,29 +174,40 @@ func (p *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI
|
||||
|
||||
func (p *PurchaseHandler) PickupGoods(order *model.GoodsOrder, userName string) (err error) {
|
||||
if globals.EnableStoreWrite && globals.EnableWscStoreWrite {
|
||||
// 微商城没有拣货完成,模拟
|
||||
p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), FakeOrderStatusFinishedPickup)
|
||||
_, err = dada.CurDeliveryHandler.CreateWaybill(order, func(deliveryFee, addFee int64) error {
|
||||
if addFee > maxAddFee {
|
||||
globals.SugarLogger.Infof("PickupGoods CreateWaybill orderID:%s addFee exceeded too much deliveryFee:%d, addFee:%d", order.VendorOrderID, deliveryFee, addFee)
|
||||
return errors.New("配送超过基准价太多")
|
||||
}
|
||||
return nil
|
||||
})
|
||||
}
|
||||
// 微商城没有拣货完成,模拟
|
||||
p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), FakeOrderStatusFinishedPickup)
|
||||
return err
|
||||
}
|
||||
|
||||
// 将订单从购物平台配送转为自送
|
||||
func (p *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error) {
|
||||
// p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), weimobapi.OrderStatusDelivering)
|
||||
return err
|
||||
}
|
||||
|
||||
// 将订单从购物平台配送转为自送后又送达
|
||||
func (p *PurchaseHandler) Swtich2SelfDelivered(order *model.GoodsOrder, userName string) (err error) {
|
||||
// p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), weimobapi.OrderStatusFinished)
|
||||
return err
|
||||
}
|
||||
|
||||
// 完全自送的门店表示开始配送
|
||||
func (p *PurchaseHandler) SelfDeliverDelivering(order *model.GoodsOrder, userName string) (err error) {
|
||||
// p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), weimobapi.OrderStatusDelivering)
|
||||
return err
|
||||
}
|
||||
|
||||
// 完全自送的门店表示配送完成
|
||||
func (p *PurchaseHandler) SelfDeliverDelievered(order *model.GoodsOrder, userName string) (err error) {
|
||||
// p.postFakeMsg(utils.Str2Int64(order.VendorOrderID), weimobapi.OrderStatusFinished)
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user