// 取消商品 func (o *subOrderImpl) cancelGoods() error { for _, v := range o._value.Items { snapshot := o._goodsRep.GetSaleSnapshot(v.SnapshotId) if snapshot == nil { return goods.ErrNoSuchSnapshot } var gds sale.IGoods = o._saleRep.GetSale(o._value.VendorId). GoodsManager().GetGoods(snapshot.SkuId) if gds != nil { gds.CancelSale(v.Quantity, o._value.OrderNo) } } return nil }