- 在SelfDeliveredAndUpdateStatus中设置OrderFlagMaskSetDelivered标志位

This commit is contained in:
gazebo
2019-05-27 14:03:58 +08:00
parent 83621cb3f2
commit af7d0d2379
5 changed files with 11 additions and 9 deletions

View File

@@ -375,7 +375,7 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da
if order.LockStatus != model.OrderStatusUnknown { if order.LockStatus != model.OrderStatusUnknown {
globals.SugarLogger.Warnf("addOrderStatus refOrderID:%s, orderID:%s, order.LockStatus:%d, status.LockStatus:%d", orderStatus.RefVendorOrderID, orderStatus.VendorOrderID, order.LockStatus, orderStatus.Status) globals.SugarLogger.Warnf("addOrderStatus refOrderID:%s, orderID:%s, order.LockStatus:%d, status.LockStatus:%d", orderStatus.RefVendorOrderID, orderStatus.VendorOrderID, order.LockStatus, orderStatus.Status)
} }
order.Flag &= ^int8(model.OrderFlagMaskUserApplyCancel) order.Flag &= ^model.OrderFlagMaskUserApplyCancel
order.LockStatus = orderStatus.Status order.LockStatus = orderStatus.Status
order.LockStatusTime = orderStatus.StatusTime order.LockStatusTime = orderStatus.StatusTime
updateFields = append(updateFields, "LockStatus", "LockStatusTime", "Flag") updateFields = append(updateFields, "LockStatus", "LockStatusTime", "Flag")

View File

@@ -71,7 +71,8 @@ func (c *BaseScheduler) SelfDeliveredAndUpdateStatus(ctx *jxcontext.Context, ven
err = c.Swtich2SelfDelivered(order, userName) err = c.Swtich2SelfDelivered(order, userName)
} }
if err == nil { if err == nil {
order.Status = model.OrderStatusFinished // order.Status = model.OrderStatusFinished // todo 是否需要强制设置完成状态?
order.Flag |= model.OrderFlagMaskSetDelivered
if err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order); err == nil { if err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order); err == nil {
globals.SugarLogger.Infof("SelfDeliveredAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName) globals.SugarLogger.Infof("SelfDeliveredAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName)
return err return err
@@ -147,7 +148,7 @@ func (c *BaseScheduler) AcceptOrRefuseFailedGetOrder(ctx *jxcontext.Context, ord
err = partner.GetPurchasePlatformFromVendorID(order.VendorID).AcceptOrRefuseFailedGetOrder(ctx, order, isAcceptIt) err = partner.GetPurchasePlatformFromVendorID(order.VendorID).AcceptOrRefuseFailedGetOrder(ctx, order, isAcceptIt)
} }
if err == nil { if err == nil {
flag := int8(model.OrderFlagAgreeFailedGetGoods) flag := model.OrderFlagAgreeFailedGetGoods
if !isAcceptIt { if !isAcceptIt {
flag = model.OrderFlagRefuseFailedGetGoods flag = model.OrderFlagRefuseFailedGetGoods
} }
@@ -181,7 +182,7 @@ func (c *BaseScheduler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *model
err = partner.GetPurchasePlatformFromVendorID(order.VendorID).AgreeOrRefuseCancel(ctx, order, isAcceptIt, reason) err = partner.GetPurchasePlatformFromVendorID(order.VendorID).AgreeOrRefuseCancel(ctx, order, isAcceptIt, reason)
} }
if err == nil { if err == nil {
flag := int8(model.OrderFlagAgreeUserApplyCancel) flag := model.OrderFlagAgreeUserApplyCancel
if !isAcceptIt { if !isAcceptIt {
flag = model.OrderFlagRefuseUserApplyCancel flag = model.OrderFlagRefuseUserApplyCancel
} }

View File

@@ -321,7 +321,8 @@ const (
OrderFlagRefuseFailedGetGoods = 24 OrderFlagRefuseFailedGetGoods = 24
OrderFlagMaskFailedDeliver = 32 OrderFlagMaskFailedDeliver = 32
OrderFlagMaskCallPMCourier = 64 // 取货失败后召唤平台配送 OrderFlagMaskCallPMCourier = 64 // 取货失败后召唤平台配送
OrderFlagMaskSetDelivered = 128 // 设置送达
) )
const ( const (

View File

@@ -29,12 +29,12 @@ func SetOrderPrintFlag(db *DaoDB, userName string, vendorOrderID string, vendorI
if isPrinted { if isPrinted {
err = SetOrderFlag(db, userName, vendorOrderID, vendorID, model.OrderFlagMaskPrinted) err = SetOrderFlag(db, userName, vendorOrderID, vendorID, model.OrderFlagMaskPrinted)
} else { } else {
err = SetOrderFlag(db, userName, vendorOrderID, vendorID, ^int8(model.OrderFlagMaskPrinted)) err = SetOrderFlag(db, userName, vendorOrderID, vendorID, ^model.OrderFlagMaskPrinted)
} }
return err return err
} }
func SetOrderFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int, flag int8) (err error) { func SetOrderFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int, flag int) (err error) {
_, err = ExecuteSQL(db, ` _, err = ExecuteSQL(db, `
UPDATE goods_order UPDATE goods_order
SET flag = flag | ? SET flag = flag | ?
@@ -43,7 +43,7 @@ func SetOrderFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int
return err return err
} }
func ClearOrderFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int, flag int8) (err error) { func ClearOrderFlag(db *DaoDB, userName string, vendorOrderID string, vendorID int, flag int) (err error) {
_, err = ExecuteSQL(db, ` _, err = ExecuteSQL(db, `
UPDATE goods_order UPDATE goods_order
SET flag = flag & ? SET flag = flag & ?

View File

@@ -49,7 +49,7 @@ type GoodsOrder struct {
ModelTimeInfo `json:"-"` ModelTimeInfo `json:"-"`
OriginalData string `orm:"-" json:"-"` // 只是用于传递数据 OriginalData string `orm:"-" json:"-"` // 只是用于传递数据
Skus []*OrderSku `orm:"-" json:"-"` Skus []*OrderSku `orm:"-" json:"-"`
Flag int8 `json:"flag"` //非运单调整相关的其它状态 Flag int `json:"flag"` //非运单调整相关的其它状态
} }
func (o *GoodsOrder) TableUnique() [][]string { func (o *GoodsOrder) TableUnique() [][]string {