diff --git a/business/jxcallback/orderman/orderman_ext.go b/business/jxcallback/orderman/orderman_ext.go index c04fd46aa..c3793a2ef 100644 --- a/business/jxcallback/orderman/orderman_ext.go +++ b/business/jxcallback/orderman/orderman_ext.go @@ -312,8 +312,8 @@ func (c *OrderManager) ExportOrders(ctx *jxcontext.Context, fromDateStr, toDateS afsInfo[v.SkuID].Count -= minus } } - if v.SkuCount2 > 0 { - skuStr := strings.Join([]string{ + if v.SkuCount2 == 1 { + skuStr1 := strings.Join([]string{ utils.Int2Str(v.SkuID), utils.Int2Str(v.SkuCount2), utils.Int2Str(v.SkuShopPrice), @@ -324,15 +324,16 @@ func (c *OrderManager) ExportOrders(ctx *jxcontext.Context, fromDateStr, toDateS order = v v.CourierVendorName = model.VendorChineseNames[v.WaybillVendorID] v.Status2 = model.OrderStatusName[v.Status] - v.SkuInfo = skuStr + v.SkuInfo = skuStr1 + v.SkuInfo2 = skuStr1 orders2 = append(orders2, v) } else { - order.SkuInfo += ";" + skuStr + order.SkuInfo += ";" + skuStr1 + order.SkuInfo2 += ";" + skuStr1 } - } - if v.SkuCount2 > 1 { + } else if v.SkuCount2 > 1 { if v.SkuEarningPrice != 0 { - skuStr := strings.Join([]string{ + skuStr2 := strings.Join([]string{ utils.Int2Str(v.SkuID), utils.Int2Str(1), utils.Int2Str(v.SkuShopPrice), @@ -345,7 +346,7 @@ func (c *OrderManager) ExportOrders(ctx *jxcontext.Context, fromDateStr, toDateS } else { price = v.SkuSalePrice } - skuStr2 := strings.Join([]string{ + skuStr3 := strings.Join([]string{ utils.Int2Str(v.SkuID), utils.Int2Str(v.SkuCount2 - 1), utils.Int2Str(v.SkuShopPrice), @@ -356,10 +357,29 @@ func (c *OrderManager) ExportOrders(ctx *jxcontext.Context, fromDateStr, toDateS order = v v.CourierVendorName = model.VendorChineseNames[v.WaybillVendorID] v.Status2 = model.OrderStatusName[v.Status] - v.SkuInfo2 = skuStr + ";" + skuStr2 + v.SkuInfo2 = skuStr2 + ";" + skuStr3 orders2 = append(orders2, v) } else { - order.SkuInfo2 += skuStr + ";" + skuStr2 + ";" + order.SkuInfo2 += ";" + skuStr2 + ";" + skuStr3 + } + } else { + skuStr1 := strings.Join([]string{ + utils.Int2Str(v.SkuID), + utils.Int2Str(v.SkuCount2), + utils.Int2Str(v.SkuShopPrice), + utils.Int2Str(v.SkuSalePrice), + utils.Int2Str(v.SkuEarningPrice), + }, ",") + if order == nil || v.ID != order.ID { + order = v + v.CourierVendorName = model.VendorChineseNames[v.WaybillVendorID] + v.Status2 = model.OrderStatusName[v.Status] + v.SkuInfo = skuStr1 + v.SkuInfo2 = skuStr1 + orders2 = append(orders2, v) + } else { + order.SkuInfo += ";" + skuStr1 + order.SkuInfo2 += ";" + skuStr1 } } }