- 订单事件中加载订单时,把sku都加载了

This commit is contained in:
gazebo
2019-09-18 14:09:19 +08:00
parent 88f1976f61
commit 737a7f3387

View File

@@ -161,6 +161,7 @@ func (c *OrderManager) OnOrderStatusChanged(orderStatus *model.OrderStatus) (err
if err == nil {
dao.Commit(db)
if !isDuplicated {
order.Skus = c.loadOrderSku(db, order.VendorOrderID, order.VendorID)
_ = scheduler.CurrentScheduler.OnOrderStatusChanged(order, orderStatus, false)
}
} else {
@@ -480,8 +481,17 @@ func (c *OrderManager) addOrderStatus(orderStatus *model.OrderStatus, db *dao.Da
return isDuplicated, order, err
}
func (c *OrderManager) loadOrderSku(db *dao.DaoDB, vendorOrderID string, vendorID int) (orderSkus []*model.OrderSku) {
utils.CallFuncLogError(func() (err error) {
_, err = db.Db.QueryTable("order_sku").Filter("vendor_order_id", vendorOrderID).Filter("vendor_id", vendorID).All(&orderSkus)
return err
}, "loadOrderSku orderID:%s", vendorOrderID)
return orderSkus
}
func (c *OrderManager) loadOrder(vendorOrderID, vendorOrderID2 string, vendorID int) (order *model.GoodsOrder, err error) {
db := orm.NewOrm()
db1 := dao.GetDB()
db := db1.Db
order = &model.GoodsOrder{
VendorOrderID: vendorOrderID,
VendorOrderID2: vendorOrderID2,
@@ -498,10 +508,7 @@ func (c *OrderManager) loadOrder(vendorOrderID, vendorOrderID2 string, vendorID
}
if err = db.Read(order, keyFields...); err == nil {
vendorOrderID = order.VendorOrderID
err = utils.CallFuncLogError(func() error {
_, err = db.QueryTable("order_sku").Filter("vendor_order_id", vendorOrderID).Filter("vendor_id", vendorID).All(&order.Skus)
return err
}, "LoadOrder orderID:%s", vendorOrderID)
order.Skus = c.loadOrderSku(db1, vendorOrderID, vendorID)
}
if err != nil {
order = nil