AdjustOrder与PartRefundOrder中,对于商品进行可能的合并操作
This commit is contained in:
@@ -515,7 +515,7 @@ func (c *OrderController) GetPrinterStatus() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func skuList2Map(skuList []*model.OrderSku) (skuCount int, skuMap map[int64]*model.OrderSku) {
|
func skuList2Map(skuList []*model.OrderSku) (skuCount int, skuMap map[int64]*model.OrderSku, outSkuList []*model.OrderSku) {
|
||||||
skuMap = make(map[int64]*model.OrderSku)
|
skuMap = make(map[int64]*model.OrderSku)
|
||||||
for _, sku := range skuList {
|
for _, sku := range skuList {
|
||||||
skuCount += sku.Count
|
skuCount += sku.Count
|
||||||
@@ -525,12 +525,13 @@ func skuList2Map(skuList []*model.OrderSku) (skuCount int, skuMap map[int64]*mod
|
|||||||
if skuMap[index] == nil {
|
if skuMap[index] == nil {
|
||||||
tmpSku := *sku
|
tmpSku := *sku
|
||||||
skuMap[index] = &tmpSku
|
skuMap[index] = &tmpSku
|
||||||
|
outSkuList = append(outSkuList, skuMap[index])
|
||||||
} else {
|
} else {
|
||||||
skuMap[index].Count += sku.Count
|
skuMap[index].Count += sku.Count
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return skuCount, skuMap
|
return skuCount, skuMap, outSkuList
|
||||||
}
|
}
|
||||||
|
|
||||||
func getSkuFromMap(skuMap map[int64]*model.OrderSku, skuID, actID int) (sku *model.OrderSku) {
|
func getSkuFromMap(skuMap map[int64]*model.OrderSku, skuID, actID int) (sku *model.OrderSku) {
|
||||||
@@ -555,6 +556,7 @@ func (c *OrderController) AdjustOrder() {
|
|||||||
var skuList []*model.OrderSku
|
var skuList []*model.OrderSku
|
||||||
err = jxutils.Strings2Objs(params.RemovedSkuInfo, &skuList)
|
err = jxutils.Strings2Objs(params.RemovedSkuInfo, &skuList)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
|
_, _, skuList = skuList2Map(skuList)
|
||||||
var order *model.GoodsOrder
|
var order *model.GoodsOrder
|
||||||
order, err = partner.CurOrderManager.LoadOrder(params.VendorOrderID, params.VendorID)
|
order, err = partner.CurOrderManager.LoadOrder(params.VendorOrderID, params.VendorID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
@@ -781,6 +783,7 @@ func (c *OrderController) PartRefundOrder() {
|
|||||||
var skuList []*model.OrderSku
|
var skuList []*model.OrderSku
|
||||||
err = jxutils.Strings2Objs(params.RefundSkuList, &skuList)
|
err = jxutils.Strings2Objs(params.RefundSkuList, &skuList)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
|
_, _, skuList = skuList2Map(skuList)
|
||||||
var order *model.GoodsOrder
|
var order *model.GoodsOrder
|
||||||
order, err = partner.CurOrderManager.LoadOrder(params.VendorOrderID, params.VendorID)
|
order, err = partner.CurOrderManager.LoadOrder(params.VendorOrderID, params.VendorID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
@@ -799,7 +802,7 @@ func (c *OrderController) PartRefundOrder() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func fillSkuList(skuList, orderSkuList []*model.OrderSku) (isSame bool, err error) {
|
func fillSkuList(skuList, orderSkuList []*model.OrderSku) (isSame bool, err error) {
|
||||||
skuCount, orderSkuMap := skuList2Map(orderSkuList)
|
skuCount, orderSkuMap, _ := skuList2Map(orderSkuList)
|
||||||
skuCount2 := 0
|
skuCount2 := 0
|
||||||
for _, sku := range skuList {
|
for _, sku := range skuList {
|
||||||
skuCount2 += sku.Count
|
skuCount2 += sku.Count
|
||||||
|
|||||||
Reference in New Issue
Block a user